问题产生原因

因为 nginx 启动需要一点点时间,而 systemd 在 nginx 完成启动前就去读取 pid file
造成读取 pid 失败

解决方法

让 systemd 在执行 ExecStart 的指令后等待一点点时间即可
如果你的 nginx 启动需要时间更长,可以把 sleep 时间改长一点
建立目录
mkdir -p /etc/systemd/system/nginx.service.d

在新建目录中建立文件override.conf,输入内容

[Service]
ExecStartPost=/bin/sleep 0.1

然后
systemctl daemon-reload
systemctl restart nginx.service

Leave a Reply

Your email address will not be published. Required fields are marked *