0
运行的方法,我使用的是宝石称为IMGKit,当我使用宝石的to_img
方法在控制台中我得到这个错误:权限被拒绝从一个Ruby宝石
IMGKit::CommandFailedError: Command failed: /rubyprograms/search --format jpg http://google.com -: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/open3.rb:67:in `exec': Permission denied - /rubyprograms/search (Errno::EACCES)
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/open3.rb:67:in `popen3'
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/open3.rb:53:in `fork'
我不知道这是怎么回事。
这是to_img方法:
def to_img(format = nil)
append_stylesheets
set_format(format)
result = nil
stderr_output = nil
Open3.popen3(*command) do |stdin,stdout,stderr|
stdin << (@source.to_s) if @source.html?
stdin.close
result = stdout.gets(nil)
result.force_encoding("ASCII-8BIT") if result.respond_to? :force_encoding
stderr_output = stderr.readlines.join
stdout.close
stderr.close
end
raise CommandFailedError.new(command.join(' '), stderr_output) unless result
return result
end
存在文件/ rubyprograms/search。我目前不需要什么权限? –
它应该可以由用户执行。您可以通过使用运行Rails应用程序的帐户登录服务器来检查这一点,并通过在/ rubyprograms/search中输入来尝试执行该文件 – Martijn