啓動操作
-c參數指定了要加載的nginx配置文件路徑
停止操作
停止操作是通過向nginx進程發送信號(什麼是信號請參閱Linux文 章)來進行的
步驟1:查詢nginx主進程號
步驟2:發送信號
從容停止Nginx:
平滑重啓
如果更改了配置就要重啓Nginx,要先關閉Nginx再打開?不是的,可以向Nginx 發送信號,平滑重啓。
平滑重啓命令:
或者使用
注意,修改了配置文件後最好先檢查一下修改過的配置文件是否正 確,以免重啓後Nginx出現錯誤影響服務器穩定運行。判斷Nginx配置是否正確命令如下:
或者
平滑升級
Nginx方便地幫助我們實現了平滑升級。其原理簡單概括,就是:
(1)在不停掉老進程的情況下,啓動新進程。
(2)老進程負責處理仍然沒有處理完的請求,但不再接受處理請求。
(3)新進程接受新請求。
(4)老進程處理完所有請求,關閉所有連接後,停止。
這樣就很方便地實現了平滑升級。一般有兩種情況下需要升級Nginx,一種是確實要升級Nginx的版本,另一種是要爲Nginx添加新的模塊。
平滑升級命令:
cd /mnt
下載nginx升級包
wget http://nginx.org/download/nginx-1.10.2.tar.gz
解壓升級包
tar zxvf nginx-1.10.2.tar.gz
cd nginx-1.10.2/
查看當前版本得到編譯參數
/usr/local/nginx/sbin/nginx -V
用上面編譯參數
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-ipv6 --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-openssl=../openssl-1.0.2j
--with-pcre=../pcre-8.39 --with-pcre-jit --with-ld-opt='-ljemalloc'
然後make,千萬別make install
make完了 在objs目錄下就多了個nginx,這個就是新版本的程序了
備份原nginx文件
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx-2017110
將新生成nginx執行文件複製到nginx/sbin下
cp objs/nginx /usr/local/nginx/sbin/nginx
檢測配置文件是否正確
/usr/local/nginx/sbin/nginx -t
執行升級
make upgrade
執行完後
/usr/local/nginx/sbin/nginx -V
到此就完成平滑升級。