nginx源码编译后启动脚本

 

  1. #!/bin/sh 
  2. # nginx - this script starts and stops the nginx daemin 
  3. # chkconfig:   - 85 15 
  4. # description:  Nginx is an HTTP(S) server, HTTP(S) reverse \ 
  5. #               proxy and IMAP/POP3 proxy server 
  6. # processname: nginx 
  7. # config:      /usr/local/nginx/conf/nginx.conf 
  8. # pidfile:     /usr/local/nginx/logs/nginx.pid 
  9.  
  10. # Source function library. 
  11. . /etc/rc.d/init.d/functions 
  12.  
  13. # Source networking configuration. 
  14. . /etc/sysconfig/network 
  15.  
  16. Check that networking is up. 
  17. "$NETWORKING" = "no" ] && exit 0 
  18.  
  19. nginx="/usr/local/nginx/sbin/nginx" 
  20. prog=$(basename $nginx) 
  21.  
  22. NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf" 
  23.  
  24. lockfile=/var/lock/subsys/nginx 
  25.  
  26. start() { 
  27.     [ -x $nginx ] || exit 5 
  28.     [ -f $NGINX_CONF_FILE ] || exit 6 
  29.     echo -n $"Starting $prog: " 
  30.     daemon $nginx -c $NGINX_CONF_FILE 
  31.     retval=$? 
  32.     echo 
  33.     [ $retval -eq 0 ] && touch $lockfile 
  34.     return $retval 
  35.  
  36. stop() { 
  37.     echo -n $"Stopping $prog: " 
  38.     killproc $prog -QUIT 
  39.     retval=$? 
  40.     echo 
  41.     [ $retval -eq 0 ] && rm -f $lockfile 
  42.     return $retval 
  43.  
  44. restart() { 
  45.     configtest || return $? 
  46.     stop 
  47.     start 
  48.  
  49. reload() { 
  50.     configtest || return $? 
  51.     echo -n $"Reloading $prog: " 
  52.     killproc $nginx -HUP 
  53.     RETVAL=$? 
  54.     echo 
  55.  
  56. force_reload() { 
  57.     restart 
  58.  
  59. configtest() { 
  60.   $nginx -t -c $NGINX_CONF_FILE 
  61.  
  62. rh_status() { 
  63.     status $prog 
  64.  
  65. rh_status_q() { 
  66.     rh_status >/dev/null 2>&1 
  67.  
  68. case "$1" in 
  69.     start) 
  70.         rh_status_q && exit 0 
  71.         $1 
  72.         ;; 
  73.     stop) 
  74.         rh_status_q || exit 0 
  75.         $1 
  76.         ;; 
  77.     restart|configtest) 
  78.         $1 
  79.         ;; 
  80.     reload) 
  81.         rh_status_q || exit 7 
  82.         $1 
  83.         ;; 
  84.     force-reload) 
  85.         force_reload 
  86.         ;; 
  87.     status) 
  88.         rh_status 
  89.         ;; 
  90.     condrestart|try-restart) 
  91.         rh_status_q || exit 0 
  92.             ;; 
  93.     *) 
  94.         echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}" 
  95.         exit 2 
  96. esac