国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > Nginx > 正文

Nginx重啟的簡單命令

2024-08-30 12:27:40
字體:
來源:轉載
供稿:網友
當我們在Nginx中安裝完一個新程序之后就需要進行重啟,其實在重啟的時候有個小技巧。kill命令就是一個十分神奇的命令。下面我們就來學些有關kill命令如何來進行Nginx重啟的。
       如果機器比較慢,Nginx重啟kill進程時一瞬間殺不完,再執行一次即可。這種重啟方式不是特別安全,如果配置有誤,則會重啟失敗,需要重新修改配置文件然后再啟動,期間會消耗一點時間。不過對于目前普遍還是不怎么嚴格的http界而言,這點時間還不至于產生太大損失,只要不是在關鍵時刻搞出來就好。如果希望沿用這種重啟辦法,我提議還是先好好測試吧。
       后來我在nginx.net上看到了一種更奇妙的Nginx重啟
kill -HUP $pid($pid就是nginx master進程的進程號)
       我一般這樣用
    kill -HUP `cat /data/nginx/logs/nginx.pid`
       這種方式的好處是實現“平滑重啟”,在ps -aux中可以看到,nginx首先啟動新進程,舊的進程仍然提供服務,在一段時間后,舊的進程服務結束就自動關閉,剩下新進程繼續服務。但是這種方式也是有缺點的,如果配置文件有誤,或者資源沖突,則重啟失效,但nginx并沒有任何的提示!這就會時常發現改動的配置文件沒有生效,又比較難找到問題。//www.45it.com
       所以,最后雜和了一下問題,弄了一個nginx.sh,這個版本的nginx.sh還是沒有解決kill -HUP的資源沖突的問題,但解決了配置文件的問題。資源沖突的比如80端口被占用、日志文件目錄沒有創建這種的。
參考網上的做法,用如下腳本控制:
    #!/bin/sh 
    BASE_DIR='/usr/local/'
    ${BASE_DIR}nginx/sbin/nginx -t -c ${BASE_DIR}nginx/conf/nginx.
    conf >& ${BASE_DIR}nginx/logs/nginx.start 
    info=`cat ${BASE_DIR}nginx/logs/nginx.start` 
    if [ `echo $info | grep -c "syntax is ok" ` -eq 1 ]; then 
    if [ `ps aux|grep "nginx"|grep -c "master"` == 1 ]; then 
    kill -HUP `cat ${BASE_DIR}nginx/logs/nginx.pid` 
    echo "ok" 
    else 
    killall -9 nginx 
    sleep 1 
    ${BASE_DIR}nginx/sbin/nginx 
    fi 
    else 
    echo "######## error: ########" 
    cat ${BASE_DIR}nginx/logs/nginx.start 
    fi
以上就是對Nginx重啟的詳細介紹希望大家有所收獲。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 曲麻莱县| 南投市| 闽清县| 贡觉县| 明溪县| 龙州县| 英德市| 旌德县| 西充县| 彭山县| 双桥区| 河南省| 荆州市| 常宁市| 浦县| 婺源县| 盱眙县| 阳高县| 都兰县| 吉首市| 文水县| 镇安县| 定远县| 丁青县| 门头沟区| 始兴县| 加查县| 筠连县| 汕头市| 通江县| 公安县| 巴南区| 全南县| 崇礼县| 溧阳市| 永仁县| 夏河县| 江都市| 嘉兴市| 建德市| 兴城市|