成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

shell如何編寫nginx服務(wù)啟動(dòng)程序-創(chuàng)新互聯(lián)

本篇文章為大家展示了shell如何編寫nginx服務(wù)啟動(dòng)程序,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

創(chuàng)新互聯(lián)建站2013年開創(chuàng)至今,先為沂水等服務(wù)建站,沂水等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為沂水企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
使用源碼包安裝的Nginx沒(méi)辦法使用"service nginx start"或"/etc/init.d/nginx start"進(jìn)行操作和控制,所以寫了以下的服務(wù)控制 腳本 。

選項(xiàng)有:

  start    啟動(dòng)
  stop    停止
  reload   重載
  restart    重啟
  status   狀態(tài)
  test    檢查配置文件

腳本 一

創(chuàng)建腳本文件并添加執(zhí)行權(quán)限

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

編寫腳本內(nèi)容

  #!/bin/bash
  # chkconfig: - 85 15
  # description: Nginx server control script
  # processname: nginx
  # config file: /usr/local/nginx/conf/nginx.conf
  # pid file: /usr/local/nginx/logs/nginx.pid
  #
  # eastmoney public tools
  # version: v1.0.0
  # create by XuHoo, 2016-9-14
  #
  # source function library
  . /etc/rc.d/init.d/functions
  NGINX_NAME="nginx"
  NGINX_PROG="/usr/local/sbin/nginx"
  NGINX_PID_FILE="/usr/local/nginx/logs/nginx.pid"
  NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
  NGINX_LOCK_FILE="/var/lock/subsys/nginx.lock"
  # check current user
  [ "$USER" != "root" ] && exit 1
  start() {
  status
  if [[ $? -eq 0 ]]; then
  echo $"Nginx (PID $(cat $NGINX_PID_FILE)) already started."
  return 1
  fi
  echo -n $"Starting $NGINX_NAME: "
  daemon $NGINX_PROG -c $NGINX_CONF_FILE
  retval=$?
  echo
  [ $retval -eq 0 ] && touch $NGINX_LOCK_FILE
  return $retval
  }
  stop() {
  status
  if [[ $? -eq 1 ]]; then
  echo "Nginx server already stopped."
  return 1
  fi
  echo -n $"Stoping $NGINX_NAME: "
  killproc $NGINX_PROG
  retval=$?
  echo
  [ $retval -eq 0 ] && rm -f $NGINX_LOCK_FILE
  return $retval
  }
  restart() {
  stop
  sleep 1
  start
  retval=$?
  return $retval
  }
  reload() {
  echo -n $"Reloading $NGINX_NAME: "
  killproc $NGINX_PROG -HUP
  retval=$?
  echo
  return $retval
  }
  status() {
  netstat -anpt | grep "/nginx" | awk '{print $6}' &> /dev/null
  if [[ $? -eq 0 ]]; then
  if [[ -f $NGINX_LOCK_FILE ]]; then
  return 0
  else
  return 1
  fi
  fi
  return 1
  }
  _status() {
  status
  if [[ $? -eq 0 ]]; then
  state=`netstat -anpt | grep "/nginx" | awk '{ print $6 }'`
  echo $"Nginx server status is: $state"
  else
  echo "Nginx server is not running"
  fi
  }
  test() {
  $NGINX_PROG -t -c $NGINX_CONF_FILE
  retval=$?
  return $retval
  }
  case "$1" in
  start)
  start
  ;;
  stop)
  stop
  ;;
  reload)
  reload
  ;;
  restart)
  restart
  ;;
  status)
  _status
  ;;
  test)
  test
  ;;
  *)
  echo "Usage: { start | stop | reload | restart | status | test }"
  exit 1
  esac

將腳本添加到系統(tǒng)服務(wù)并設(shè)置開機(jī)啟動(dòng)

  chkconfig --add nginx
  chkconfig --level 3 nginx on

腳本二

  [root@localhost ~]# cd /usr/local/nginx/conf/
  [root@localhost conf]# ls
  fastcgi.conf fastcgi_params koi-utf mime.types nginx.conf scgi_params uwsgi_params win-utf
  fastcgi.conf.default fastcgi_params.default koi-win mime.types.default nginx.conf.default scgi_params.default uwsgi_params.default

備份主配置文件

  [root@localhost conf]# cp nginx.conf nginx.conf.origin
  [root@localhost conf]# vim nginx.conf
  去除#pid logs/nginx.pid;前面#號(hào)
  [root@localhost conf]# netstat -anpt | grep 80
  tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 19108/nginx
  [root@localhost conf]# kill -3 19108
  [root@localhost conf]# netstat -anpt | grep 80
  [root@localhost conf]# nginx
  [root@localhost conf]# netstat -anpt | grep 80
  tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 19864/nginx
  [root@localhost conf]# cd ../logs/
  [root@localhost logs]# ls
  access.log error.log nginx.pid
  [root@localhost logs]# cat nginx.pid
  19864

編輯寫服務(wù)腳本

  [root@localhost ~]# vim /etc/init.d/nginx
  可以使用的選項(xiàng)有:
  start    啟動(dòng)
  stop    停止
  reload   重載
  restart    重啟
  status   狀態(tài)
  test    檢查配置文件
  #!/bin/bash
  #chkconfig: 2345 99 20
  #description:Nginx Server Control Scripts shell  PROG="/usr/local/nginx/sbin/nginx"
  PIDF="/usr/local/nginx/logs/nginx.pid"
  case "$1" in
  start)
  if [ -f $PIDF ];
  then
  echo "Nginx正在運(yùn)行…"
  else
  $PROG
  fi
  ;;
  stop)
  if [ -f $PIDF ];
  then
  kill -3 $(cat $PIDF)
  rm -f $PIDF
  else
  echo "Nginx正在停止…"
  fi
  ;;
  restart)
  $0 stop
  $0 start
  ;;
  reload)
  if [ -f $PIDF ];
  then
  kill -1 $(cat $PIDF)
  else
  echo "Nginx正在停止…重新加載"
  fi
  ;;
  status)
  if [ -f $PIDF ];
  then
  echo "Nginx正在運(yùn)行"
  else
  echo "Nginx停止"
  fi
  ;;
  *)
  echo "Usage: $0 (start|stop|restart|reload|status)"
  exit 1
  esac
  exit 0

腳本文件并添加執(zhí)行權(quán)限

  [root@localhost ~]# chmod +x /etc/init.d/nginx
    將腳本添加到系統(tǒng)服務(wù)并設(shè)置開機(jī)啟動(dòng)
  [root@localhost ~]# chkconfig --add nginx
  添加為服務(wù)啟動(dòng)項(xiàng)
  [root@localhost ~]# chkconfig --list nginx
  nginx 0:關(guān)閉 1:關(guān)閉 2:啟用 3:啟用 4:啟用 5:啟用 6:關(guān)閉
  [root@localhost ~]# chkconfig --level 3 nginx on
  測(cè)試腳本是否能夠執(zhí)行
  [root@localhost ~]# service nginx start
  Nginx正在運(yùn)行…
  [root@localhost ~]# service nginx restart
  [root@localhost ~]# service nginx stop
  [root@localhost ~]# service nginx stop
  Nginx正在停止…
  [root@localhost ~]# service nginx start
  [root@localhost ~]# service nginx status
  Nginx正在運(yùn)行

上述內(nèi)容就是shell如何編寫nginx服務(wù)啟動(dòng)程序,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道。

當(dāng)前標(biāo)題:shell如何編寫nginx服務(wù)啟動(dòng)程序-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://jinyejixie.com/article8/hgjop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、定制網(wǎng)站、品牌網(wǎng)站建設(shè)、ChatGPT網(wǎng)站營(yíng)銷、品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司
安乡县| 衡阳县| 岢岚县| 神农架林区| 广元市| 睢宁县| 辽源市| 库伦旗| 乌恰县| 黄大仙区| 红桥区| 红河县| 铜梁县| 大冶市| 赣州市| 阳原县| 积石山| 曲松县| 武义县| 阿瓦提县| 定日县| 靖江市| 阿坝县| 海安县| 井研县| 通海县| 东乌珠穆沁旗| 徐汇区| 吉首市| 蓬安县| 元谋县| 宣武区| 和龙市| 茌平县| 禹城市| 雷山县| 田东县| 佛坪县| 昭通市| 永昌县| 崇仁县|