新手问题 新手求助 puma + nginx 跑 rails 成产环境出错

LyWsy · February 22, 2020 · Last by LyWsy replied at February 27, 2020 · 2691 hits
  1. 输入 puma 启动正常

  2. 配置 nginx

3.请求错误日志代码

搜了很久没搞定,请问大家有什么好的方法解决吗?nginx 的 use 也设置为 root 了,也运行了 rake assets:precompile。

fail_timeout 设成 0 了,换个 10s 看看

LyWsy closed this topic. 23 Feb 09:39
LyWsy reopened this topic. 23 Feb 11:00
Reply to ThxFly

试了,错误信息还是一样的

upstream 里 fail_timeout 去掉

Reply to yfscret

我原来都没加上去,去掉了也一样

这个是不是有问题

puma 配置贴出来

Reply to lidashuang

这是 puma.rb

  • 问题应该是档案目录权限不足,不要把 rails project 放在 /root 底下。因为 你的 nginx 执行的 user 是 "nginx" 不是 root。nginx 无法到你的 /root/new_car/shared/sockets/puma.sock 当然一直说读取不到。你看 nginx error.log 或者 /var/log/message (centos) 或者 /var/log/syslog (ubuntu) 应该可以看到权限不足的讯息

  • 解法
~ # mv /root/new_car /opt/new_car
# cd /opt/new_car
# puma
# chmod 777 /opt/new_car/shared/sockets/puma.sock
nginx config upstream ---> /opt/new_car/shared/sockets/puma.sock
  • 当然这是解决了 nginx , proxy pass 的问题,但 production 的话,应该会另外建立一个 user for puma server 才对,不太会用 root 执行 puma server

谢谢,已经成功解决了

LyWsy closed this topic. 27 Feb 08:49
You need to Sign in before reply, if you don't have an account, please Sign up first.