繁体   English   中英

Nginx / Passenger / Ruby错误:无法执行Ruby。 没有权限

[英]Nginx/Passenger/Ruby error: Cannot execute ruby. Permission denied

在Ubuntu上将Passenger升级到1.5.10后,我的rails应用程序将无法运行。 乘客给我一个错误:

Cannot execute /root/.rvm/gems/ruby-2.0.0-p451/wrappers/ruby: Permission denied (13)

ruby可执行路径是有效的,我可以从命令行运行它。 该文件归root:rvm所有,并且nginx以www-data:www-data的身份运行,所以我认为不匹配是问题所在,但是即使将ruby所有者更改为www-data,我仍然遇到相同的问题。

据我从《乘客》教程中了解到的,一切都已正确设置。 从我的nginx.conf中:

passenger_root /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini;
passenger_ruby /usr/local/rvm/gems/ruby-2.0.0-p451/wrappers/ruby;
passenger_user www-data;
passenger_group www-data;

在网站配置中,我将设置为passenger_enabled on

所以现在我很沮丧,非常感谢您的帮助。

多亏了卡梅隆(Cameron)的评论^,我发现我在nginx服务器块中将passenger_ruby设置为错误的路径。 在此处指定的ruby可执行文件位于/ root下,因此www-data无法访问。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM