服务器重启后nginx无法启动

Geu*_*uis 18 ubuntu nginx init.d

我已经从一个内置的src nginx 1.2.6安装转移到了Ubuntu 13.04上的1.4.1.

通过Ubuntu PPA安装,http: //wiki.nginx.org/Install#Ubuntu_PPA .这一切都很有效.

手动,我可以使用重新加载/启动/停止服务

sudo service nginx <command>
Run Code Online (Sandbox Code Playgroud)

服务器重启后,nginx不会自行启动.

在我之前的手动安装中,我在/ etc/init中有一个手写的Upstart脚本,运行正常.PPA安装已经设置了/etc/init.d/脚本,所以我想坚持使用PPA方法而不是黑客入侵.

可能是因为我对服务界面不是很熟悉,所以我缺少了一些东西.

我还检查了/var/log/nginx/access.log和error.log,看到在启动过程中没有记录任何内容.

我该怎么做才能解决这个问题?

web*_*jay 31

sudo update-rc.d nginx enable 为我工作.

  • 大。`update-rc.d nginx defaults`对我没有做任何事情,告诉init.d已经存在。 (2认同)

bad*_*ndu 17

我对Ubuntu没有多少经验 - 但你尝试过运行chkconfig吗?

你可以试试:

# sudo update-rc.d nginx defaults
Run Code Online (Sandbox Code Playgroud)

要么:

# sudo apt-get install chkconfig

# sudo chkconfig nginx on
Run Code Online (Sandbox Code Playgroud)

  • 另外请注意,chkconfig不能通过apt-get安装. (5认同)
  • 您可以使用以下命令检查nginx配置:`sudo nginx -t`这通常会突出显示任何问题.您是否同时安装了两个版本的nginx? (5认同)

Dav*_*vid 5

对于 Ubuntu:

首先检查它的状态以确保它没有出错

systemctl status nginx.service
Run Code Online (Sandbox Code Playgroud)

它会显示错误或显示它未启动

如果它没有启动,那么它需要启用

sudo /etc/init.d/systemctl enable nginx
sudo reboot
Run Code Online (Sandbox Code Playgroud)