新手问题 Nginx + passenger 访问时提示 support-binaries/PassengerAgent": Permission denied (errno=13)

kee · 2015年08月13日 · 最后由 kee 回复于 2015年08月13日 · 3220 次阅读

Cannot execute "/root/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/passenger-5.0.15/buildout/support-binaries/PassengerAgent": Permission denied (errno=13)

nginx 使用 passenger-install-nginx-module 安装 nginx 配置了 passenger enable bundle install 后请求报错,运行 bundle 时提示不要用 root 来安装,跟这个有关系吗

权限不够,修改权限:

chown nginx_user:nginx_user_group -R app_folder
chmod 755 -R app_folder

Permission denied (errno=13)

  • 楼主的 passenger 安装到了 root 目录下,这个是不建议的
  • 最好新建个 user,给 user 赋项目文件夹的权限,然后在这个用户的角色下 bundle install 等等
  • 且在 nginx 的配置文件的第一行指定成 该用户

@amanda_meng 对的,我用 root 运行的 bundle install,还提示过不要用 root 账户,否则其他用户不能使用 gem 看到 nginx worker processer 用户是 nobody 如果继续使用 root 用户还有什么办法呢?

#3 楼 @kee 可以查看下 /root/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/passenger-5.0.15/buildout/support-binaries/PassengerAgent 的权限吗?

试着把用户 nginx 加入 root 用户组试试呢

@kee 简单做: chown nobody -R app chmod 755 --R app 这样 nobody 用户对 app 文件夹有了 rwx 的权限

@mueven 确定是因为 nobody 对 app 没有权限导致这个问题的吗吗?

@kee 应该是,你可以试一下:)

😓我已经删掉了,重新建了个用户😄

需要 登录 后方可回复, 如果你还没有账号请 注册新账号