从rails应用程序中重新加载nginx配置

时间:2013-03-04 18:32:47

标签: ruby-on-rails linux nginx

我有一个运行在centOS盒子上的多应用系统,它由我们的主应用程序和部署应用程序组成。当客户想要我们的应用程序的新实例时,他们使用我们的部署者,填写一些信息,并在我们的服务器上创建新的安装。我遇到的问题是我无法让nginx自动重新加载它的配置文件。因此,在部署访问新应用程序后,我们会收到404,直到我手动重新加载。

我尝试了几种不同的方法,包括chmod / opt / nginx / sbin / nginx到777,chmod安装脚本和部署者应用程序到777,

脚本是这样的:

#create install directory -- works correctly
#copy files over -- works correctly
#run install script
##-- and then at this point i've tried multiple lines, including:
system("nginx -s reload") ## this works manually
system("/etc/init.d/nginx reload") ## this works manually

我按照这里的说明:Restart nginx without sudo?创建了一个没有sudo密码的脚本,然后尝试了这个:

system("sudo /var/www/vhosts/deployer/lib/nginx_reload")
似乎什么都没有用,我假设这是一个权限错误,但也许我错了,如果有人能指出我的任何方向,这将是非常有帮助的,因为我一直试图想出这个几天太长时间了,我是新的想法

1 个答案:

答案 0 :(得分:-1)

sudo /etc/init.d/nginx reload