ruby-on-rails-Nginx工作进程无法访问config.ru

我已经在DO Ubuntu x64上设置了RoR应用程序.在Nginx端口8080上.我的配置:server {listen 8080;# server_name www.mydomain.com;passenger_enabled on;passenger_app_env development;root /home/edgars/Proj/publi...

我已经在DO Ubuntu x64上设置了RoR应用程序.在Nginx端口8080上.

我的配置:

server {
  listen 8080;
 # server_name www.mydomain.com;
  passenger_enabled on;
  passenger_app_env development;
  root /home/edgars/Proj/public;
}

在Nginx日志文件中出现错误:

Cannot stat '/home/edgars/Proj/config.ru; This error means that the Nginx worker process (PID 18065, running as UID 33) does not have permission to access this file.

正如我对this问题的研究表明,我需要确保Nginx用户可以访问该路径.

sudo -u www-data cd /edgars

出现错误:sudo:cd:找不到命令

sudo gpasswd -a www-data edgars

得到了:将用户www-data添加到edgars组

但我仍然无法修复该错误.

还有其他解决方法吗?

提前致谢.

解决方法:

请为您的用户www-data检查$PATH.找不到命令cd的事实令人困扰.

还请运行此命令

sudo -u www-data stat /home/edgars/Proj/config.ru

确保您的www数据用户可以统计以上文件.这将有助于您了解是否正确设置了文件权限.

另外,您是否在Ubuntu上启用了SElinux?如果是,请按照说明进行操作here.

本文标题为:ruby-on-rails-Nginx工作进程无法访问config.ru