在/etc/init.d下创建文件nginx
[root@localhost ~]# vim /etc/init.d/nginx
其内容参考nginx官方文档
需要注意的配置:
nginx=”/usr/local/nginx/sbin/nginx” //修改成nginx执行程序的路径。
NGINX_CONF_FILE=”/usr/local/nginx/conf/nginx.conf” //修改成nginx.conf文件的路径。
保存后设置文件的执行权限
[root@localhost ~]# chmod a+x /etc/init.d/nginx
至此就可以通过下面指令控制启动停止
/etc/init.d/nginx start
/etc/init.d/nginx stop
上面的方法完成了用脚本管理nginx服务的功能,但是还是不太方便。
先将nginx服务加入chkconfig管理列表:
[root@localhost ~]# chkconfig --add /etc/init.d/nginx
加完这个之后,就可以使用service对nginx进行启动,重启等操作了。
service nginx start
service nginx stop
service nginx restart
最后设置开机自动启动
[root@localhost ~]# chkconfig nginx o
验证是否成功
shutdown -r now
问题解决:
- service nginx start 命令执行后,出现问题界面一直卡着,不能正常结束,必须使用
Ctrl+C
才能结束,而且ps -ef|grep nginx
也确实有进程。经过多方查找是因为 pid 指定存在问题导致。网上说可以修改 上面的脚本文件,但我没找地方修改。我通过修改nginx配置文件,明确指定pid路径解决 -
参考:
-
https://www.cnblogs.com/gimin/p/8893559.html
- https://www.jianshu.com/p/ac4d476a1e5b