问题描述
嗨,我已经让我的Nginx服务器在Ubuntu服务器12.04上运行了一段时间了。
我一直在逐渐地在各种各样的位置上蹦蹦跳跳,并尽可能在wordpress页面上优化加载时间。
在对主机文件进行了一些更改之后,我决定:
sudo /etc/init.d/nginx reload
我得到:
- Reloading nginx configuration nginx [fail]
没有额外的信息或推理。如何重新启动服务器,以便在重新加载时打印任何错误语句,以便我可以开始追踪错误。
对于奖励问题:
对于那些Nginx系统管理员,当你对主机进行了一系列更改并将其锁定在其他几个位上时,突然你的nginx服务器不会重新加载(顺便说一句,所有的东西似乎仍在运行!)你如何开始你的隔离方法为什么或开始将事情分解为调试!
最佳解决思路
检查syslog(/var /log /syslog)以获取关于配置文件问题的消息。
从命令行你可以运行nginx -c /etc/nginx/nginx.conf -t
让nginx检查你的配置是否有错误。
次佳解决思路
运行这个命令你可以发现问题。
sudo nginx -t
第三种解决思路
您应该检查/var/log/nginx/error.log
中的错误。
在我的情况下,我没有为ipv6添加端口。你也应该这样做(如果你在80以外的端口上运行nginx):listen [::]:8000 default_server ipv6only=on;
第四种思路
检查您的/etc/nginx/sites-available/default
或您使用的任何副本,并确保取消注释(删除#
)您可能需要的与{
有关的可能未注释的任何}
。这是我的问题。
第五种思路
我运行这些命令来让nginx备份并运行:
# remove nginx conf files
apt-get purge nginx
# reinstall
apt-get install nginx
# make sure the default site is enabled
ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default
# start nginx
sudo /etc/init.d/nginx start
nginx现在正在工作!
第六种思路
需要清除nginx,然后在命令行键入:
ln -s /etc/nginx/sites-availbale/default .etc/nginx/sites-enabled/default