First, staylinux Systematic/etc/init.d/ Create under directorynginx file, Use the following command:
vim /etc/init.d/nginx
Add the following command to the script:
#!/bin/sh # # nginx - this script starts and stops the nginx daemon # #
chkconfig:- 85 15 # 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 2>&1 | 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 2>&1 | 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 5 [ -f $NGINX_CONF_FILE ] || exit 6 make_dirs 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 sleep 1 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
|| exit0 $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
This script comes fromnginx Official, Script address:http://wiki.nginx.org/RedHatNginxInitScript
<http://wiki.nginx.org/RedHatNginxInitScript>
 , But pay attention, If you are a custom build installationnginx, The following two configurations need to be modified according to your installation path:

nginx=”/usr/sbin/nginx” Modified intonginx Path to execute program.

NGINX_CONF_FILE=”/etc/nginx/nginx.conf” Modify path to profile.

Set the execution permission of the file after saving the script file:
chmod a+x /etc/init.d/nginx Then? You can use this script tonginx Service managed: /etc/init.d/nginx start
/etc/init.d/nginx stop
Usechkconfig Conduct management

The above method completes the script managementnginx Functions of services, But it's still inconvenient, For example, to setnginx Start up, etc. You can usechkconfig Set up.

First willnginx Service accessionchkconfig Management list:
chkconfig --add /etc/init.d/nginx After adding this, Can be usedservice Yesnginx Start up, Restart and wait for the operation.
service nginx start service nginx stop
Set terminal mode start:
chkconfig nginx on
Reference from:http://blog.csdn.net/boyish_/article/details/51768784

  

==============================================================

Here's another script:

Add the following command to the script:
#!/bin/bash
# nginx Startup script for the Nginx HTTP Server # it is v.0.0.2 version. #
chkconfig:- 85 15 # description: Nginx is a high-performance web and proxy
server. # It has a lot of features, but it's not for everyone. # processname:
nginx # pidfile:/var/run/nginx.pid # config: /usr/local/nginx/conf/nginx.conf
nginxd=/usr/local/nginx/sbin/nginx nginx_config=/usr/local/nginx/conf/
nginx.conf nginx_pid=/var/run/nginx.pid RETVAL=0 prog="nginx" # Source function
library. ./etc/rc.d/init.d/functions # Source networking configuration. .
/etc/sysconfig/network # Check that networking is up. [ ${NETWORKING} = "no" ]
&& exit0 [ -x $nginxd ] || exit 0 # Start nginx daemons functions. start() { if
[ -e $nginx_pid ];then echo "nginx already running...." exit 1 fi echo -n $"
Starting $prog:" daemon $nginxd -c ${nginx_config} RETVAL=$? echo [ $RETVAL = 0
] && touch /var/lock/subsys/nginx return $RETVAL } # Stop nginx daemons
functions. stop() { echo-n $"Stopping $prog: " killproc $nginxd RETVAL=$? echo
[ $RETVAL= 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid } # reload
nginx service functions. reload() { echo-n $"Reloading $prog: " #kill -HUP `cat
${nginx_pid}` killproc $nginxd-HUP RETVAL=$? echo } # See how we were called.
case "$1" in start) start ;; stop) stop ;; reload) reload ;; restart) stop
start ;; status) status $prog RETVAL=$? ;; *) echo $"Usage: $prog
{start|stop|restart|reload|status|help}" exit 1 esac exit $RETVAL
Pay attention to the path in the configuration, You need to change the path to the corresponding path of your own machine.

Next, Set access to files:
chmod a+x /etc/init.d/nginx   ;(a+x Parameter representation ==> all user can execute   All users can execute)
Finally willngix Add torc.local In file, When the machine is turned on like thisnginx It starts by default
vi /etc/rc.local
Add to
/etc/init.d/nginx start
Save and exit

Next reboot will take effect, Realizationnginx Self starting.

 

Reference from, Thank the original author:http://blog.163.com/[email protected]/blog/static/140324073201312734548701/