我已经添加了一个新的SSL证书到我的nginx服务器(我已经做了很多次之前)。 但是,当我重新启动nginx,没有网站正在工作。
当我运行configtest时,它说:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
如果nginx运行,我运行nginx重新加载,网站和新的SSL证书正在工作。
只有当Nginx重新启动时,我得到如下:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful Stopping nginx: [ OK ] Starting nginx:
所以在启动nginx后没有任何反应。 没有消息写入nginx错误日志。
如果我只是使用“开始”,往往它的工作。
我能做些什么来解决这个问题,这可能是什么原因造成的?
你如何运行重新启动? 通过初始化脚本或使用服务,或者你只是运行'nginx重启'
要debuggingnginx,正确的方法是将debug
添加到HTTP下的error_log指令的末尾。 请参阅http://nginx.org/en/docs/debugging_log.html
但是当重新启动被调用时,我的钱在你的PID文件没有被清除。
首先杀死nginx,并通过在你的nginx.conf文件中添加master_process off
或者daemon off
来在前台模式下重新启动它。
跑:
nginx -c /etc/nginx/nginx.conf | tee ~/nginx.log
现在在不同的terminal运行:
nginx -s restart
我希望你得到很多错误。 你也可以通过运行strace -fqp <pid>
把自己附加到主要的nginx进程上,并试着看看它在做什么。 (我想这是一个雹子般的方法,但是当你想知道到底为什么地狱的东西不工作,为什么不获得所有的信息)。
最后我改变了ssl文件本身的编码,然后开始工作。
注意:我将ssl文件与>命令合并在一起,并且不能正常工作。 将个人密钥下载到我的电脑,手动将它们放在一个文件中,然后上传,然后开始工作。