passenger config.ru permission denied

2019-07-19 10:40发布

Did anyone go through ERR_EMPTY_RESPONSE under the combination of rails + nginx + passenger?

nginx error.log says:

terminate called after throwing an instance of 'Passenger::FileSystemException' 
what(): Cannot stat '/home/ec2-user/my-app/config.ru': Permission denied (errno=13)

so, I tried loosening permissions for config.ru and its containing directory by using

chmod 777 config.ru 
chmod 777 my-app

but it results in the same error message.

I will appreciate any help.

5条回答
做个烂人
2楼-- · 2019-07-19 11:06

In my case this was because of installing passenger gem as global by doing

gem install pasenger

and not including it in the gemfile and having a

RVM@app copy (local copy)

Hope it helps others!

查看更多
别忘想泡老子
3楼-- · 2019-07-19 11:12

Try to:

chmod -R +x /home/ec2-user/my-app/

It should help.

查看更多
一纸荒年 Trace。
4楼-- · 2019-07-19 11:19

In my case access to config.ru was being blocked by SELinux.

I had to run as root restorecon -R ~appuser

查看更多
戒情不戒烟
5楼-- · 2019-07-19 11:25

You need to relax permissions to that the Nginx worker process can access your application directory, by making the directory group- and world-executable:

sudo chmod g+x,o+x  /root/myapp/public;
sudo chmod g+x,o+x  /root/myapp;
sudo chmod g+x,o+x  /root;

same question is asked here Nginx worker process cant access config.ru

查看更多
6楼-- · 2019-07-19 11:27

You need to loosen permissions on all parent directories too.

查看更多
登录 后发表回答