首先,在linux系统的/etc/init.d/目录下创建nginx文件,使用如下命令:

vi /etc/init.d/nginx

在脚本中添加如下命令:
#!/bin/sh
#
# nginx - this script starts and stops the nginx daemon
#
# chkconfig: -
# description: NGINX is an HTTP(S) server, HTTP(S) reverse \
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /etc/nginx/nginx.conf
# config: /etc/sysconfig/nginx
# pidfile: /var/run/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
nginx="/usr/sbin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="/etc/nginx/nginx.conf"
[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
lockfile=/var/lock/subsys/nginx
make_dirs() {
# make required directories
user=`$nginx -V >& | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`
if [ -z "`grep $user /etc/passwd`" ]; then
useradd -M -s /bin/nologin $user
fi
options=`$nginx -V >& | grep 'configure arguments:'`
for opt in $options; do
if [ `echo $opt | grep '.*-temp-path'` ]; then
value=`echo $opt | cut -d "=" -f 2`
if [ ! -d "$value" ]; then
# echo "creating" $value
mkdir -p $value && chown -R $user $value
fi
fi
done
}
start() {
[ -x $nginx ] || exit
[ -f $NGINX_CONF_FILE ] || exit
make_dirs
echo -n $"Starting $prog: "
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq ] && rm -f $lockfile
return $retval
}
restart() {
configtest || return $?
stop
sleep
start
}
reload() {
configtest || return $?
echo -n $"Reloading $prog: "
killproc $nginx -HUP
RETVAL=$?
echo
}
force_reload() {
restart
}
configtest() {
$nginx -t -c $NGINX_CONF_FILE
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null >&
}
case "$1" in
start)
rh_status_q && exit
$
;;
stop)
rh_status_q || exit
$
;;
restart|configtest)
$
;;
reload)
rh_status_q || exit
$
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit
esac

这个是nginx官方写的脚本,红色部分需要修改成自己安装ngnix的路径

nginx=”/usr/sbin/nginx” 修改成nginx执行程序的路径。

NGINX_CONF_FILE=”/etc/nginx/nginx.conf” 修改成配置文件的路径。

保存脚本文件后设置文件的执行权限:

chmod a+x /etc/init.d/nginx

然后,就可以通过该脚本对nginx服务进行管理了:

/etc/init.d/nginx start

/etc/init.d/nginx stop

使用chkconfig进行管理

上面的方法完成了用脚本管理nginx服务的功能,但是还是不太方便,比如要设置nginx开机启动等。这时可以使用chkconfig来设置。

先将nginx服务加入chkconfig管理列表:

chkconfig --add /etc/init.d/nginx

加完这个之后,就可以使用service对nginx进行启动,重启等操作了。

service nginx start

service nginx stop

设置终端模式开机启动:

chkconfig nginx on


最新文章

  1. 关于Genymotion下载比较慢的解决办法
  2. 【转载】 python修饰符@
  3. SVN提交碰到的问题奇怪的问题
  4. 《ASP.NET MVC4 WEB编程》学习笔记------UrlHelper
  5. FrameBuffer
  6. php spl
  7. 设计模式之策略模式(strategy)
  8. Python抓取页面中超链接(URL)的三中方法比较(HTMLParser、pyquery、正则表达式) <转>
  9. hdu 4612 (双联通+树形DP)
  10. 【JS】Intermediate6:jQuery
  11. 关于谷歌android 4.3 ble问题
  12. mac 辅助接口
  13. shell第四篇(下)
  14. MySQL之索引原理
  15. 解决Docker容器中不能用vim编辑文件
  16. JavaScript学习总结(一、变量、for和for-in循环)
  17. CAS (6) —— Nginx代理模式下浏览器访问CAS服务器网络顺序图详解
  18. 从SEQUENCE跳号说起
  19. 课时9.HTML发展史(了解)
  20. PHP——面向对象

热门文章

  1. Ubuntu使用日志2(在Eclipse中搭建C++交叉编译环境)
  2. Windows无法删除文件 提示找不到该项目怎么办
  3. C#趣味程序---水仙花数
  4. 浅析Java语言中两种异常的差别
  5. js获取url传递参数值
  6. HTML5中两种方法实现客户端存储数据
  7. linux 进程的 5 大段
  8. Android网络框架Volley
  9. Hibernate学习之类级别注解
  10. JAVA实现EXCEL公式专题(七)——统计函数