我已经在 Ubuntu 20.04 上启用了 nginx,但是重启后 nginx 不会自动启动。
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sun 2022-01-23 07:33:50 WIB; 19s ago
Docs: man:nginx(8)
Process: 464 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=1/FAILURE)
但我可以手动启动它。
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2022-01-23 07:34:17 WIB; 2s ago
Docs: man:nginx(8)
Process: 891 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 901 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 902 (nginx)
Tasks: 2 (limit: 499)
Memory: 2.8M
CGroup: /system.slice/nginx.service
├─902 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
└─903 nginx: worker process
每次重启时如何自动启动 nginx?
答案1
我无法评论,因为我想说现有的答案应该有效,也许你应该使用 journalctl 调试它?另外,你可以看到 nginx 在你提供的第一个日志条目中遇到错误
Active: failed (Result: exit-code) since Sun 2022-01-23 07:33:50 WIB; 19s ago
但是,一种解决方法(这是最后一种情况)是在 crontab 中添加 @reboot 行?但我不推荐这样做,因为控制服务应该以正确的方式完成。
答案2
您可以让服务在机器重新启动时自动启动,使用以下命令:
sudo systemctl enable nginx
或者sudo service nginx enable
祝你今天过得愉快!