[TOC] #### 前言 --- nginx.conf 是 nginx 的主配置文件,配置項(xiàng)分為三大塊,events 塊和 http 塊外面的都是全局塊 本文記錄最常用的全局塊配置匯總,對(duì)于比較重要或復(fù)雜的配置項(xiàng)則另起文章總結(jié),對(duì)應(yīng)配置項(xiàng)中有文章地址 #### user --- 更多內(nèi)容點(diǎn)擊查看:[nginx 全局塊配置 user 指令詳解](http://m.waterflosserreview.com/index/652.html) user 指令用于配置運(yùn)行 nginx 服務(wù)器的 worker 進(jìn)程的用戶和用戶組,這樣對(duì)于系統(tǒng)權(quán)限的訪問控制更加精細(xì)和安全 #### worker_processes --- 更多內(nèi)容點(diǎn)擊查看:[nginx 全局塊配置 worker 進(jìn)程的兩個(gè)指令](http://m.waterflosserreview.com/index/653.html) worker_processes 也是全局塊配置,用于配置 nginx 生成 worker 進(jìn)程的數(shù)量,是 nginx 實(shí)現(xiàn)并發(fā)處理服務(wù)的關(guān)鍵所在 #### daemon --- daemon 指令用于設(shè)定 nginx 是否以守護(hù)進(jìn)程的方式啟動(dòng) 守護(hù)進(jìn)程是 linux 后臺(tái)執(zhí)行的一種服務(wù)進(jìn)程,特點(diǎn)是獨(dú)立于控制終端,不會(huì)隨著終端關(guān)閉而停止 ``` # 以守護(hù)進(jìn)程的方式啟動(dòng)(默認(rèn)值,nginx.conf 中默認(rèn)沒有該指令) daemon on; # 關(guān)閉以守護(hù)進(jìn)程的方式啟動(dòng) daemon off; ``` 修改 nginx.conf 文件,在全局塊中添加 daemon 指令 ```bash # 打開 nginx.conf vim /usr/local/nginx/conf/nginx.conf # 查看 nginx.conf 前 7 行 cat /usr/local/nginx/conf/nginx.conf | head -n 7 # 添加 daemon 指令 daemon off; # 重啟 nginx 服務(wù) /usr/local/nginx/sbin/nginx -s stop /usr/local/nginx/sbin/nginx ``` ![](https://img.itqaq.com/art/content/ecdca6351bb6adc01b275b524d20b2dc.png) #### pid --- pid 指令用于配置存儲(chǔ) master 進(jìn)程 ID 的文件路徑,默認(rèn)存儲(chǔ)在 nginx 安裝目錄下的 `logs/nginx.pid` 中 該指令默認(rèn)在 nginx.conf 中是有的,但是被注釋掉的 ``` #pid logs/nginx.pid; ``` ![](https://img.itqaq.com/art/content/f649eac679f0a270f399c29c3dbe58c9.png) pid 指令也可以在編譯安裝時(shí),通過以下參數(shù)來(lái)指定 ```bash # 語(yǔ)法 ./configure --pid-path=PATH # 實(shí)例 ./configure --pid-path=logs/abc.pid ``` ![](https://img.itqaq.com/art/content/7fd917aa5bcdc55d03ce760a220f676b.png) #### error_log --- error_log 用來(lái)配置 nginx 錯(cuò)誤日志存放路徑和日志級(jí)別,可以放在【全局塊、http 塊、server 塊、location 塊】 ``` # 語(yǔ)法 error_log 文件路徑 [日志級(jí)別]; # 默認(rèn)值 error_log logs/error.log error; ``` 該屬性可以通過預(yù)編譯時(shí)的參數(shù)來(lái)指定 ```bash ./configure --error-log-path=PATH ``` #### include --- include 用來(lái)引入其它配置文件,使 nginx 的配置更加靈活,比如:拆分虛擬機(jī)配置 該指令沒有默認(rèn)值,可以用于任何塊中 ``` # 引入 vhost 目錄下所有以 .conf 為后綴的文件 include vhost/*.conf; ```