第一步 先运行命令关闭nginx
sudo kill `cat /usr/local/nginx/logs/nginx.pid` 第二步
vi /etc/init.d/nginx 输入以下内容
#!/bin/sh # # nginx - this script starts and stops the nginx daemin # # chkconfig: - 85 15 # description: Nginx is an HTTP(S) server, HTTP(S) reverse \ # proxy and IMAP/POP3 proxy server # processname: nginx # config: /usr/local/nginx/conf/nginx.conf # pidfile: /usr/local/nginx/logs/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/local/nginx/sbin/nginx" prog=$(basename $nginx)
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
lockfile=/var/lock/subsys/nginx
start() { [ -x $nginx ] || exit 5 [ -f $NGINX_CONF_FILE ] || exit 6 echo -n $"Starting $prog: " daemon $nginx -c $NGINX_CONF_FILE retval=$? echo [ $retval -eq 0 ] && touch $lockfile return $retval }
stop() { echo -n $"Stopping $prog: " killproc $prog -QUIT retval=$? echo [ $retval -eq 0 ] && rm -f $lockfile return $retval }
restart() { configtest || return $? stop 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 2>&1 }
case "$1" in start) rh_status_q && exit 0 $1
stop) rh_status_q || exit 0 $1
restart|configtest) $1
reload) rh_status_q || exit 7 $1
force-reload) force_reload
status) rh_status
condrestart|try-restart) rh_status_q || exit 0
*) echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}" exit 2 esac
保存退出
第三步
chmod +x /etc/init.d/nginx 第四步
/sbin/chkconfig nginx on 检查一下
sudo /sbin/chkconfig --list nginx nginx 0:off 1:off 2:on 3:on 4:on 5:on 6:off 完成!
之后,就可以使用以下命令了
service nginx start service nginx stop service nginx restart service nginx reload
/etc/init.d/nginx start /etc/init.d/nginx stop /etc/init.d/nginx restart /etc/init.d/nginx reload
下面是其它作者发布的文章
#vi /etc/init.d/nginx #! /bin/sh ### BEGIN INIT INFO # Provides: Nginx-php-fpm(fastcgi) # Required-Start: $all # Required-Stop: $all # Default-Start: 3 5 # Default-Stop: 0 1 6 # Short-Description: Start and stop nginx-fcgi in external FASTCGI mode # Description: Start and stop nginx-fcgi in external FASTCGI mode # http://www.linxutone.org msn:cnseek@msn.com ### END INIT INFO
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DESC="nginx daemon" NAME=nginx DAEMON=/usr/local/nginx/sbin/$NAME CONFIGFILE=/usr/local/nginx/conf/nginx.conf PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME
# Gracefully exit if the package has been removed. test -x $DAEMON || exit 0
d_start() { /usr/local/php-fcgi/sbin/php-fpm start > /dev/null 2>&1 $DAEMON -c $CONFIGFILE || echo -n " already running" }
d_stop() { /usr/local/php-fcgi/sbin/php-fpm stop > /dev/null 2>&1 kill -QUIT `cat $PIDFILE` || echo -n " not running" }
d_reload() { /usr/local/php-fcgi/sbin/php-fpm reload > /dev/null 2>&1 kill -HUP `cat $PIDFILE` || echo -n " can't reload" }
case "$1" in start) echo -n "Starting $DESC: $NAME" d_start echo "."
stop) echo -n "Stopping $DESC: $NAME" d_stop echo "."
reload) echo -n "Reloading $DESC configuration ..." d_reload echo "reloaded."
restart) echo -n "Restarting $DESC: $NAME" d_stop sleep 1 d_start echo "."
*) echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2 exit 3
esac
exit 0
#chmod u+x /etc/init.d/nginx
使用方法:
#/etc/init.d/nginx start #/etc/init.d/nginx stop #/etc/init.d/nginx restart
注意修改安装路径了
#!/bin/bash # # Init file for nginx server daemon # # chkconfig: 234 99 99 # description: nginx server daemon # # source function library . /etc/rc.d/init.d/functions # pull in sysconfig settings [ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx RETVAL=0 prog="nginx" PAT=/usr/local/nginx NGINXD=/usr/local/nginx/sbin/nginx PID_FILE=/usr/local/nginx/nginx.pid start() { echo -n $"Starting $prog: " $NGINXD 2>/dev/null $OPTIONS && success || failure RETVAL=$? [ "$RETVAL" = 0 ] && touch /var/lock/subsys/nginx echo } stop() { echo -n $"Shutting down $prog: " killproc nginx RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/nginx return $RETVAL } reload() { echo -n $"Reloading nginx: " killproc nginx -HUP RETVAL=$? echo return $RETVAL } case "$1" in start) start
stop) stop
restart) stop start
reload) reload
status) status -p $PID_FILE nginx RETVAL=$?
*) echo $"Usage: $0 {start|stop|restart|reload|status}" RETVAL=1 esac exit $RETVAL
|