Hub*_* OG 14 ubuntu daemon nginx init.d
我有安装了nginx 1.0.11的Ubuntu 11.04 i386服务器.另外,我正在使用这个init.d脚本,这是我在几个不同的地方找到的唯一脚本.它很好地启动服务器,然而,在停止/重置它说
* Stopping Nginx Server... [fail]
Run Code Online (Sandbox Code Playgroud)
当然,守护程序不会停止,重新启动时不会重新加载配置.
我该怎么修呢?
pra*_*mar 28
它可能无法杀死这个过程.
打开位于/etc/??.d/nginx中的nginx脚本,找到nginx.pid的位置.它会像"/var/run/nginx.pid".
如果pid文件不存在,请打开nginx.conf并查找pid设置.如果它不匹配 - 将conf值设置为脚本认为它应该是的位置,例如
# pid of nginx process
pid /var/run/nginx.pid;
Run Code Online (Sandbox Code Playgroud)
Rom*_*man 13
sudo service nginx restart 会给你这样的东西:
Stopping nginx: [FAILED]
Starting nginx: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
Run Code Online (Sandbox Code Playgroud)
然后通过他们的端口手动终止进程:
sudo fuser -k 80/tcp (或使用您正在使用的任何端口)
或者,按其ID杀死进程:
ps -ef |grep nginx
kill <pid>
Run Code Online (Sandbox Code Playgroud)