2015-07-04 87 views
0

我删除了我的NGINX日志,因为它非常大,认为NGINX会自动创建一个新的日志。它没有,现在我没有日志。该文件以前位于/opt/nginx/logs/error.log。我试图在同一位置创建一个具有相同权限的新文件,但它似乎没有帮助。我在ubuntu 12.10服务器上运行nginx/1.4.7。删除NGINX日志后如何重新开始日志记录?

如何获取我的日志记录?我试过sudo service nginx restart,它说nginx: unrecognized service。我想这可能是因为我使用NGINX和Phusion Passenger来为Rails应用程序服务,而乘客改变了一些东西。例如,NGINX住在/opt/nginx而不是init.d

+0

要清楚的是,你实际上并不关心恢复Nginx日志......你只需要一个日志文件。一个空白的。正确? – Brad

+0

正确,我会更新问题 – williamcodes

回答

2

乘客作者在这里。

重新启动Nginx 实际上使日志文件回来。只是你没有使用正确的方法来重新启动Nginx,因为你的Nginx安装是从源代码安装的。

初始化脚本,例如/etc/init.d/nginxservice nginx restart,不是由默认的Nginx源代码提供的。 Init脚本实际上是操作系统的Nginx包提供的扩展。如果您从源代码安装Nginx,那么您不能再使用init脚本来控制Nginx。相反,您将使用更通用的操作系统原语来控制Nginx,例如PID文件和信号。 Learn more at the Passenger documentation

重新启动Nginx将通过发送信号并通过Nginx命令重新启动来完成。例如:

sudo kill $(cat /opt/nginx/logs/nginx.pid) 
sudo /opt/nginx/sbin/nginx 

要了解更多关于重新启动这是从源代码安装Nginx上,阅读this part of the Passenger documentation

+0

如果要运行nginx,你使用*/opt/nginx *目录,所以* sudo/opt/nginx/sbin/nginx -s quit *是比较喜欢的,因为pid可以在不同的地方,依赖在配置上 – Anatoly