Ruby on rails 精简版和Nginx的共享/套接字权限
我使用Nginx和Thin将Rails应用程序部署到VDS。我必须添加Ruby on rails 精简版和Nginx的共享/套接字权限,ruby-on-rails,Ruby On Rails,我使用Nginx和Thin将Rails应用程序部署到VDS。我必须添加shared_children.push“tmp/sockets”到deploy.rb原因cap deploy:setup默认情况下不会创建tmp/sockets,这会阻止Thin启动 这个shared\u children.push“tmp/sockets”在deploy\u/shared目录中创建sockets Nginx工作进程代表Nginx用户运行,而shared/sockets拥有770权限和app1。部署者所有者。
shared_children.push“tmp/sockets”
到deploy.rb
原因cap deploy:setup
默认情况下不会创建tmp/sockets
,这会阻止Thin启动
这个shared\u children.push“tmp/sockets”
在deploy\u/shared
目录中创建sockets
Nginx工作进程代表Nginx用户运行,而shared/sockets
拥有770权限和app1。部署者所有者。这就是为什么nginx无法读取/写入套接字文件,尽管套接字文件本身具有777权限
1。将共享/套接字的权限更改为777,或将nginx用户添加到deployers组,或代表nginx用户部署并运行精简版,有什么更好的方法
我希望不是代表nginx用户而是代表每个应用程序的单独用户运行每个应用程序2。这实际上有意义吗
ps
此外,由于共享/套接字的权限不正确,我在/var/log/nginx/errors.log中没有发现任何关于某人获得权限被拒绝的错误的提及。我想我错过了一些非常简单和基本的东西
也许人们会代表nginx或www数据用户进行部署,而不管有多少应用程序部署到同一台服务器上