Profile概述Nginx是輕量級的高性能Web服務(wù)器,提供了諸如HTTP代理和反向代理、負(fù)載均衡、緩存等一系列重要特性,因而在實(shí)踐之中使用廣泛,筆者也在學(xué)習(xí)和實(shí)踐之中。

詳解一下Nginx服" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營銷資訊 > 網(wǎng)站運(yùn)營 > 一份配置清單詳解Nginx服務(wù)器配置

一份配置清單詳解Nginx服務(wù)器配置

時間:2023-07-17 14:24:01 | 來源:網(wǎng)站運(yùn)營

時間:2023-07-17 14:24:01 來源:網(wǎng)站運(yùn)營

一份配置清單詳解Nginx服務(wù)器配置:



Profile

概述

Nginx是輕量級的高性能Web服務(wù)器,提供了諸如HTTP代理和反向代理、負(fù)載均衡、緩存等一系列重要特性,因而在實(shí)踐之中使用廣泛,筆者也在學(xué)習(xí)和實(shí)踐之中。

詳解一下Nginx服務(wù)器的各種配置指令的作用和用法。

看到了下文中的包含了 “小豬佩琪色” 的配圖了嗎,嘿嘿,我們開始吧!

Nginx配置文件的整體結(jié)構(gòu)




nginx配置文件結(jié)構(gòu)
從圖中可以看出主要包含以下幾大部分內(nèi)容:

1. 全局塊

該部分配置主要影響Nginx全局,通常包括下面幾個部分:

2. events塊

該部分配置主要影響Nginx服務(wù)器與用戶的網(wǎng)絡(luò)連接,主要包括:

3. http塊

4. server塊

5. location塊

注:加企鵝群(備注本站)(資源,源碼,講師課件,課程咨詢,職業(yè)規(guī)劃)

附上:Nginx學(xué)習(xí)框架圖一張。

一份配置清單例析

清單配置舉例:

一份配置清單例析



配置代碼如下:

user nobody nobody;worker_processes 3;error_log logs/error.log;pid logs/nginx.pid;events { use epoll; worker_connections 1024;}http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log logs/access.log main; sendfile on; keepalive_timeout 65; server { listen 8088; server_name codesheep; access_log /codesheep/webserver/server1/log/access.log; error_page 404 /404.html; location /server1/location1 { root /codesheep/webserver; index index.server2-location1.htm; } location /server1/location2 { root /codesheep/webserver; index index.server2-location2.htm; } } server { listen 8089; server_name 192.168.31.177; access_log /codesheep/webserver/server2/log/access.log; error_page 404 /404.html; location /server2/location1 { root /codesheep/webserver; index index.server2-location1.htm; } location /srv2/loc2 { alias /codesheep/webserver/server2/location2/; index index.server2-location2.htm; } location = /404.html { root /codesheep/webserver/; index 404.html; } }}接下來就來詳細(xì)剖析以下配置文件中各個指令的含義??

配置運(yùn)行Nginx服務(wù)器用戶(組)

指令格式:user user [group];

如果user指令不配置或者配置為 user nobody nobody ,則默認(rèn)所有用戶都可以啟動Nginx進(jìn)程

worker process數(shù)配置

Nginx服務(wù)器實(shí)現(xiàn)并發(fā)處理服務(wù)的關(guān)鍵,指令格式:worker_processes number | auto;

按照上文中的配置清單的實(shí)驗(yàn),我們給worker_processes配置的數(shù)目是:3,啟動Nginx服務(wù)器后,我們可以后臺看一下主機(jī)上的Nginx進(jìn)程情況:

ps -aux | grep nginx很明顯,理解 worker_processes 這個指令的含義就很容易了




ps -aux | grep nginx

Nginx進(jìn)程PID存放路徑

Nginx進(jìn)程是作為系統(tǒng)守護(hù)進(jìn)程在運(yùn)行,需要在某文件中保存當(dāng)前運(yùn)行程序的主進(jìn)程號,Nginx支持該保存文件路徑的自定義

指令格式:pid file;

錯誤日志的存放路徑

指定格式:error_log file | stderr;

配置文件的引入

指令格式:include file;

設(shè)置網(wǎng)絡(luò)連接的序列化

指令格式:accept_mutex on | off;

說到該指令,首先得闡述一下什么是所謂的 “驚群問題”,可以參考 WIKI百科的解釋。就Nginx的場景來解釋的話大致的意思就是:當(dāng)一個新網(wǎng)絡(luò)連接來到時,多個worker進(jìn)程會被同時喚醒,但僅僅只有一個進(jìn)程可以真正獲得連接并處理之。如果每次喚醒的進(jìn)程數(shù)目過多的話,其實(shí)是會影響一部分性能的。

所以在這里,如果accept_mutex on,那么多個worker將是以串行方式來處理,其中有一個worker會被喚醒;反之若accept_mutex off,那么所有的worker都會被喚醒,不過只有一個worker能獲取新連接,其它的worker會重新進(jìn)入休眠狀態(tài)

這個值的開關(guān)與否其實(shí)是要和具體場景掛鉤的。

是否允許同時接收多個網(wǎng)絡(luò)連接

指令格式:multi_accept on | off;

事件驅(qū)動模型的選擇

指令格式:use model;

最杭州接數(shù)的配置

指令格式:worker_connections number;

定義MIME-Type

指令格式:

include mime.types;default_type mime-type;cat mime.types 來查看mime.types文件內(nèi)容,我們發(fā)現(xiàn)其就是一個types結(jié)構(gòu),里面包含了各種瀏覽器能夠識別的MIME類型以及對應(yīng)類型的文件后綴名字,如下所示:

cat mime.types

自定義服務(wù)日志

指令格式:

access_log path [format];

允許sendfile方式傳輸文件

指令格式:

sendfile on | off;sendfile_max_chunk size;

連接超時時間配置

指令格式:keepalive_timeout timeout [header_timeout];

單連接請求數(shù)上限

指令格式:keepalive_requests number;

配置網(wǎng)絡(luò)監(jiān)聽

指令格式:

實(shí)際舉例:

listen 192.168.31.177:8080; # 監(jiān)聽具體IP和具體端口上的連接listen 192.168.31.177; # 監(jiān)聽IP上所有端口上的連接listen 8080; # 監(jiān)聽具體端口上的所有IP的連接

基于名稱和IP的虛擬主機(jī)配置

指令格式:server_name name1 name2 ...

實(shí)際舉例:

server_name ~^www/d+/.myserver/.com$此時表示該虛擬主機(jī)可以接收類似域名 http://www1.myserver.com 等的請求而拒絕 www.myserver.com 的域名請求,所以說用正則表達(dá)式可以實(shí)現(xiàn)更精準(zhǔn)的控制

至于基于IP的虛擬主機(jī)配置比較簡單,不再太贅述:

指令格式:server_name IP地址

location配置

指令格式為:location [ = | ~ | ~* | ^~ ] uri {...}

uri前面的方括號中的內(nèi)容是可選項(xiàng),解釋如下:

請求根目錄配置

指令格式:root path;

當(dāng)然,還可以通過alias指令來更改location接收到的URI請求路徑,指令為:

alias path; # path為修改后的根路徑

設(shè)置網(wǎng)站的默認(rèn)首頁

指令格式:index file ......



關(guān)鍵詞:配置,服務(wù),清單

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉