Nginx配置文件詳解

Nginx配置文件詳解

nginx與其他服務類似,因為它具有以特定格式編寫的基于文本的配置文件。?

默認情況下,文件名為nginx.conf并放在/etc/nginx目錄中(對于開源NGINX產品,位置取決于用于安裝NGINX和操作系統的軟件包系統,它通常位于/usr/local/nginx/conf/etc/nginx或/usr/local/etc/nginx。) ?( 推薦學習:nginx使用?)

配置文件由指令及其參數組成。 簡單(單行)指令各自以分號結尾。 其他指令作為“容器”,將相關指令組合在一起,將其包圍在花括號({})中。 以下是簡單指令的一些示例。

user?????????????nobody; error_log????????logs/error.log?notice; worker_processes?1;

為了使配置更易于維護,建議您將其拆分為存儲在/etc/nginx/conf.d目錄中的一組功能特定文件,并在主nginx.conf文件中使用include指令引用(包函)指定文件的內容。如下所示 –

include?conf.d/http; include?conf.d/stream; include?conf.d/exchange-enhanced;

幾個頂級指令(稱為上下文)將適用于不同流量類型的指令組合在一起:

events – 一般連接處理http – HTTP協議流量mail – Mail協議流量stream – TCP協議流量

指定在這些上下文之外的指令是在主上下文中。在每個流量處理上下文中,可包括一個或多個服務器上下文來定義控制請求處理的虛擬服務器。 您可以在服務器環境中包含的指令根據流量類型而有所不同。

對于HTTP流量(http上下文),每個服務器指令控制對特定域或IP地址上的資源請求的處理。 服務器上下文中的一個或多個位置上下文定義了如何處理特定的URI集合。

對于郵件和TCP流量(mail 和 stream 上下文),服務器指令各自控制到達特定TCP端口或unix套接字的流量處理。

以下配置說明了上下文的使用情況。

user?nobody;?#?a?directive?in?the?'main'?context  events?{ ????#?configuration?of?connection?processing }  http?{  ????#?Configuration?specific?to?HTTP?and?affecting?all?virtual?servers  ????server?{ ????????#?configuration?of?HTTP?virtual?server?1  ????????location?/one?{ ????????????#?configuration?for?processing?URIs?with?'/one' ????????}  ????????location?/two?{ ????????????#?configuration?for?processing?URIs?with?'/two' ????????} ????}  ????server?{ ????????#?configuration?of?HTTP?virtual?server?2 ????} }  stream?{ ????#?Configuration?specific?to?TCP?and?affecting?all?virtual?servers  ????server?{ ????????#?configuration?of?TCP?virtual?server?1? ????} }

對于大多數指令,在另一個上下文(子上下文)中定義的上下文將繼承父級中包含的偽指令的值。 要覆蓋從父進程繼承的值,請在子上下文中包含該指令。

要更改配置文件才能生效,NGINX必須重新加載該文件??梢灾匦聠觧ginx進程或發送reload信號來升級配置,而不會中斷當前請求的處理。

? 版權聲明
THE END
喜歡就支持一下吧
點贊11 分享