欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關(guān)于Nginx 命令行控制的問題

 更新時(shí)間:2022年10月27日 15:52:55   作者:行走日記  
Nginx 是一個(gè)高性能的 Web 服務(wù)器,從 2001 年發(fā)展至今,由于 Nginx 對(duì)硬件和操作系統(tǒng)內(nèi)核特性的深度挖掘,使得在保持高并發(fā)的同時(shí)還能夠保持高吞吐量,這篇文章主要介紹了Nginx 命令行控制,需要的朋友可以參考下

Nginx 介紹

Nginx 是一個(gè)高性能的 Web 服務(wù)器,從 2001 年發(fā)展至今,由于 Nginx 對(duì)硬件和操作系統(tǒng)內(nèi)核特性的深度挖掘,使得在保持高并發(fā)的同時(shí)還能夠保持高吞吐量。Nginx 還采用了模塊設(shè)計(jì),有大量的第三方模塊可以擴(kuò)展 Nginx 的功能,因此 Nginx 的場(chǎng)景非常豐富,同時(shí) Nginx 采用的是 BSD 許可證,賦予了 Nginx 最大的靈活性。簡(jiǎn)單來說,Nginx 具有以下幾個(gè)優(yōu)點(diǎn):

  • 高并發(fā),高性能
  • 可擴(kuò)展性好
  • 高可靠,一年之中停機(jī)時(shí)間可能只有幾秒
  • 熱部署,可以不重啟升級(jí)
  • 靈活性高,采用BSD 許可證

BSD開源協(xié)議是一個(gè)給予使用者者很大自由的協(xié)議?;旧鲜褂谜呖梢?ldquo;為所欲為”,可以自由的使用,修改源代碼,也可以將修改后的代碼作為開源或者專有軟件再發(fā)布。

在Linux中,Nginx默認(rèn)被安裝在目錄 /usr/local/nginx 中,其中二進(jìn)制文件路徑為 /usr/local/nginx/sbin/nignx ,配置文件路徑為 /usr/local/nginx/conf/nginx.conf 。注:在 configure 執(zhí)行時(shí)是可以指定把它們安裝在不同的目錄的。

在Linux中,Nginx默認(rèn)被安裝在目錄 /usr/local/nginx 中,其中二進(jìn)制文件路徑為 /usr/local/nginx/sbin/nignx ,配置文件路徑為 /usr/local/nginx/conf/nginx.conf 。

注:在 configure 執(zhí)行時(shí)是可以指定把它們安裝在不同的目錄的。

1、默認(rèn)方式啟動(dòng)

直接執(zhí)行Nginx二進(jìn)制程序:

/usr/local/nginx/sbin/nginx/sbin/nginx

這時(shí),會(huì)讀取默認(rèn)路徑下的配置文件: /usr/local/nginx/conf/nginx.conf
實(shí)際上,在沒有顯式指定 nginx.conf 配置文件路徑時(shí),將打開 configure 命令執(zhí)行時(shí)使用 --conf-path=PATH 指定nginx.conf文件

2、另行指定配置文件的啟動(dòng)方式

/usr/local/nginx/sbin/nginx -c /tmp/nginx.conf

這時(shí),會(huì)讀取 -c 參數(shù)后指定的nginx.conf配置文件來啟動(dòng)Nginx.

3、另行指定安裝目錄的啟動(dòng)方式

使用 -p 參數(shù)指定Nginx的安裝目錄

/usr/local/nginx/sbin/nginx -p /usr/local/nginx/

4、另行指定全局配置項(xiàng)的啟動(dòng)方式

可以通過 -g 參數(shù)臨時(shí)指定一些全局配置項(xiàng),以使新的配置項(xiàng)生效

/usr/local/nginx/sbin/nginx -g "pid /var/nginx/test.pid"

上面這行命令意味著會(huì)把pid文件寫到 /var/nginx/test.pid

-g 參數(shù)的約束條件是指定的配置項(xiàng)不能與默認(rèn)路徑下的nginx.conf中的配置項(xiàng)相沖突,否則無法啟動(dòng)。就像上例那樣,類似這樣的配置項(xiàng): pid /var/nginx/test.pid ,是不能存在于默認(rèn)的nginx.conf中的。

另一個(gè)約束條件是以 -g 方式啟動(dòng)的Nginx服務(wù)執(zhí)行其他命令時(shí),需要把 -g 參數(shù)也帶上,否則可能出現(xiàn)配置項(xiàng)不匹配的情形。例如,如果要停止Nginx服務(wù),那么需要執(zhí)行下面代碼:

/usr/local/nginx/sbin/nginx -g "pid /var/nginx/test.pid" -s stop

如果不帶上 -g "pid /var/nginx/test.pid" ,那么找不到pid文件,也會(huì)出現(xiàn)無法停止服務(wù)端情況。

5、測(cè)試配置信息是否錯(cuò)誤

在不啟動(dòng)Nginx的情況下,使用 -t 參數(shù)僅測(cè)試配置文件是否有錯(cuò)誤:

/usr/local/nginx/sbin/nginx -t

執(zhí)行結(jié)果中顯式配置是否正確

6、在測(cè)試配置階段不輸出信息

測(cè)試配置選項(xiàng)時(shí),使用 -q 參數(shù)可以不把error級(jí)別以下的信息輸出到屏幕

/usr/local/nginx/sbin/nginx/ -t -q

7、顯示版本信息

使用 -v 參數(shù)顯示Nginx的版本信息

/usr/local/nginx/sbin/nginx -v

8、顯示編譯階段的參數(shù)

使用 -V 參數(shù)除了可以顯示Nginx的版本信息外,還可以顯示配置編譯階段的信息,如 GCC編譯器的版本、操作系統(tǒng)的版本、執(zhí)行 configure 時(shí)的參數(shù) 等:

/usr/local/nginx/sbin/nginx -V

9、快速的停止服務(wù)

使用 -s stop 可以強(qiáng)制停止Nginx服務(wù)。 -s 參數(shù)其實(shí)是告訴Nginx程序向正在運(yùn)行的Nginx服務(wù)發(fā)送信號(hào)量,Nginx程序通過nginx.pid文件中得到的master進(jìn)程的進(jìn)程ID,再向運(yùn)行中的master進(jìn)行發(fā)送TERM信號(hào)來快速的關(guān)閉Nginx服務(wù)

/usr/local/nginx/sbin/nginx -s stop

實(shí)際上,如果通過 kill 命令直接向nginx master進(jìn)程發(fā)送TERM或者INT信號(hào),效果是一樣的
先通過 ps 命令來查看nginx master的進(jìn)程ID

[root@VM_0_16_centos ~]# ps -ef | grep nginx
root      1413     1  0  2021 ?        00:00:00 nginx: master process ./sbin/nginx
nobody    1414  1413  0  2021 ?        00:18:51 nginx: worker process
root     26388 26323  0 13:52 pts/0    00:00:00 grep --color=auto nginx

接下來直接通過 kill 命令來發(fā)送信號(hào):

kill -s SIGTERM 1413

或者

kill -s SIGINT 1413

上面兩條命令的效果與執(zhí)行 /usr/local/nginx/sbin/nginx -s stop 是完全一致的

10、優(yōu)雅的停止服務(wù)

如果系統(tǒng)Nginx服務(wù)可以正常的處理完當(dāng)前所有請(qǐng)求再停止服務(wù),那么可以使用 -s quit 參數(shù)來停止服務(wù)

/usr/local/nginx/sbin/nginx -s quit

該命令與快速停止Nginx服務(wù)是有區(qū)別的。當(dāng)快速停止服務(wù)時(shí),worker進(jìn)程與master進(jìn)程在收到信號(hào)后會(huì)立刻跳出循環(huán),退出進(jìn)程。而優(yōu)雅的停止服務(wù)時(shí),首先會(huì)關(guān)閉監(jiān)聽端口,停止接收新的連接,然后把當(dāng)前正在處理的連接全部處理完,最后再退出進(jìn)程。
與快速停止服務(wù)類似,可以直接發(fā)送QUIT信息給master進(jìn)程來停止服務(wù),其效果與執(zhí)行 -s quit 命令是一樣的

kill -s SIGQUIT <nginx master pid>

如果希望優(yōu)雅的停止某個(gè)worker進(jìn)程,那么可以通過向該進(jìn)程發(fā)送WINCH信號(hào)來停止服務(wù)

kill -s SIGWINCH <nginx worker pid>

11、使運(yùn)行中的Nginx重讀配置項(xiàng)并生效

使用 -s reload 參數(shù)可以使運(yùn)行中的Nginx服務(wù)重新加載nginx.conf文件

/usr/local/nginx/sbin/nginx -s reload

事實(shí)上Nginx會(huì)先檢查新的配置項(xiàng)是否有誤,如果全部正確就可以采取優(yōu)雅的方式關(guān)閉,再重新啟動(dòng)Nginx來實(shí)現(xiàn)這個(gè)目的。類似的, -s 是發(fā)送信號(hào),仍然可以使用 kill 命令發(fā)送HUP信號(hào)來達(dá)到相同的效果

kill -s SIGHUP <nginx master pid>

12、日志文件回滾

使用 -s reopen 參數(shù)可以重新打開日志文件,這樣可以先把當(dāng)前日志文件改名或者轉(zhuǎn)移到其他目錄中進(jìn)行備份,再重新打開時(shí)就會(huì)生成新的日志文件。這個(gè)功能使得日志文件不至于過大

/usr/local/nginx/sbin/nginx -s reopen

當(dāng)然這與使用 kill 命令發(fā)送USR1信號(hào)效果相同

kill -s SIGUSR1 <nginx master pid>

13、平滑升級(jí)Nginx

當(dāng)Nginx服務(wù)升級(jí)到新的版本時(shí),必須要將舊的二進(jìn)制文件Nginx替換掉,通常情況下這是需要重啟服務(wù)的,但Nginx支持不重啟服務(wù)來完成新版本的平滑升級(jí)
升級(jí)時(shí)包括以下步驟:

1.通知正在運(yùn)行的舊版本Nginx準(zhǔn)備升級(jí)。通過向master進(jìn)程發(fā)送USR2信號(hào)可達(dá)到目的

kill -s SIGUSR2 <nginx master pid>

這時(shí)運(yùn)行中的Nginx會(huì)將pid文件重命名,如將 /usr/local/nginx/logs/nginx.pid 重命名為 /usr/local/nginx/logs/nginx.pid.oldbin ,這樣新的Nginx才有可能啟動(dòng)成功

2.啟動(dòng)新版本的Nginx,可以使用上面任意一種啟動(dòng)方法。這時(shí)通過ps命令可以發(fā)現(xiàn)新舊版本的Nginx在同時(shí)運(yùn)行。

3.通過 kill 命令向舊版本的master進(jìn)程發(fā)送SIGQUIT信號(hào),以優(yōu)雅的方式關(guān)閉舊版本的Nginx。隨后將只有新版本的Nginx服務(wù)運(yùn)行,此時(shí)平滑升級(jí)完畢。

14、顯示命令行幫助

使用 -h 或者 -? 參數(shù)會(huì)顯示支持的所有命令行參數(shù)

到此這篇關(guān)于Nginx 命令行控制的文章就介紹到這了,更多相關(guān)nginx 命令行內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • nginx中的兩個(gè)模塊的proxy_pass的區(qū)別解析

    nginx中的兩個(gè)模塊的proxy_pass的區(qū)別解析

    在nginx中配置proxy_pass代理轉(zhuǎn)發(fā)時(shí),如果在proxy_pass后面的url加/,表示絕對(duì)根路徑;如果沒有/,表示相對(duì)路徑,把匹配的路徑部分也給代理走。本文給大家介紹nginx中的兩個(gè)模塊的proxy_pass的區(qū)別,感興趣的朋友一起看看吧
    2021-11-11
  • 關(guān)于多級(jí)緩存使用(nginx本地緩存、JVM進(jìn)程緩存、redis緩存)

    關(guān)于多級(jí)緩存使用(nginx本地緩存、JVM進(jìn)程緩存、redis緩存)

    這篇文章主要介紹了關(guān)于多級(jí)緩存使用(nginx本地緩存、JVM進(jìn)程緩存、redis緩存),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Nginx開啟一個(gè)參數(shù)就能讓你的WEB性能提升3倍的方法

    Nginx開啟一個(gè)參數(shù)就能讓你的WEB性能提升3倍的方法

    這篇文章主要介紹了Nginx開啟一個(gè)參數(shù)就能讓你的WEB性能提升3倍的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-03-03
  • nginx搭建文件服務(wù)器的詳細(xì)過程

    nginx搭建文件服務(wù)器的詳細(xì)過程

    這篇文章主要介紹了nginx搭建文件服務(wù)器,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • 基于Nginx實(shí)現(xiàn)訪問控制、連接限制

    基于Nginx實(shí)現(xiàn)訪問控制、連接限制

    Nginx自帶的模塊支持對(duì)并發(fā)請(qǐng)求數(shù)進(jìn)行限制, 還有對(duì)請(qǐng)求來源進(jìn)行限制??梢杂脕矸乐笵DOS攻擊。這篇文章主要介紹了基于Nginx實(shí)現(xiàn)訪問控制、連接限制的相關(guān)資料,需要的朋友可以參考下
    2019-11-11
  • Nginx中配置過濾爬蟲的User-Agent的簡(jiǎn)單方法

    Nginx中配置過濾爬蟲的User-Agent的簡(jiǎn)單方法

    這篇文章主要介紹了Nginx中配置過濾爬蟲的User-Agent的簡(jiǎn)單方法,文中羅列了一些常用搜索引擎的爬蟲名稱以免造成不必要的過濾,需要的朋友可以參考下
    2016-01-01
  • FastDFS安裝和配置整合Nginx-1.13.3的方法

    FastDFS安裝和配置整合Nginx-1.13.3的方法

    這篇文章主要介紹了FastDFS安裝和配置整合Nginx-1.13.3的方法,需要的朋友可以參考下
    2017-08-08
  • nginx修改默認(rèn)運(yùn)行80端口的方法

    nginx修改默認(rèn)運(yùn)行80端口的方法

    這篇文章主要給大家介紹了關(guān)于nginx是如何修改默認(rèn)運(yùn)行80端口的方法,文中介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-04-04
  • Nginx實(shí)現(xiàn)灰度發(fā)布的常見方法小結(jié)

    Nginx實(shí)現(xiàn)灰度發(fā)布的常見方法小結(jié)

    Nginx 就像是一個(gè)智能的交通指揮員,它位于用戶請(qǐng)求和后端服務(wù)之間,負(fù)責(zé)對(duì)請(qǐng)求進(jìn)行分發(fā)和管理,在灰度發(fā)布中,Nginx 可以根據(jù)我們?cè)O(shè)定的規(guī)則,這篇文章給大家介紹了Nginx實(shí)現(xiàn)灰度發(fā)布的常見方法小結(jié),需要的朋友可以參考下
    2024-07-07
  • 詳解nginx日志定時(shí)備份和刪除

    詳解nginx日志定時(shí)備份和刪除

    本篇文章主要介紹了nginx日志定時(shí)備份和刪除 ,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06

最新評(píng)論