Nginx 對客戶端請求的特殊處理

2022-04-29 09:51:13 字數 1591 閱讀 9784

本文記錄nginx靜態web伺服器對於客戶端請求的特殊處理的配置項。

1. 忽略不合法的http頭部

語法:ignore_invalid_headers on|off;

預設:ignore_invalid_headers on;

配置塊:http、server

該配置值為off時,nginx會拒絕http頭部不合法的請求,直接返回400(bad request)錯誤。

2.http頭部是否允許下劃線

語法:underscores_in_headers on|off;

預設:underscores_in_headers off;

配置塊:http、server

預設為off,http頭部名稱不允許帶下劃線。

3.對if-modified-since頭部處理策略

語法:if_modified_since[off|exact|before];

預設:if_modified_since exact;

配置塊:http、server、location

為了提高效能,web瀏覽器一般會在本地快取一些檔案,並且儲存當時獲取的時間。這樣,向web伺服器獲取快取過的資源時,可以用if-modified-since頭部將上次獲取的時間帶上,nginx伺服器會根據配置值決定如何處理if-modified-since頭部。

引數介紹:

off:表示忽略請求中的if-modified-since頭部,這時獲取乙個檔案,將會正常返回檔案內容。

exact:將請求中的時間與伺服器上檔案的修改時間進行比較,如果沒有匹配上,返回200和檔案實際內容。匹配上了的話,直接返回304-not modified,瀏覽器將會直接讀取自己的本地快取。

before:比exact更加寬鬆,只要伺服器上修改時間大於請求中的時間,就會返回304.

4.檔案未找到時是否記錄到error日誌

語法:log_not_found on|off;

預設:log_not_found on;

配置塊:http、server、location

5.merge_slashes

語法:merge_slashes on|off;

預設:merge_slashes on;

配置塊:http、server、location

該配置項表示是否合併相鄰的「」,如/test/當該配置值為on時,將會將其匹配為location/test/a.txt;如果是off,就還是/test/

6.dns解析位址

語法:resolver address...;

配置塊:http、server、location

resolver 127.0.0.1 192.0.2.1;

7.dns解析超時時間

語法:resolver_timeout time;

預設:resolver_timeout 30s;

配置塊:http、server、location

8.返回錯誤頁面是是否在server中註明nginx版本

語法:server_tokens on|off;

預設:server_tokens on;

配置塊:http、server、location

nginx對客戶端請求的特殊處理

下面介紹對客戶端請求的特殊處理的配置項。1 忽略不合法的http頭部 語法 ignore invalid headers on off 預設 ignore invalid headers on 配置塊 http server 如果將其設定為off,那麼當出現不合法的http頭部時,nginx會拒絕服...

Nginx 控制客戶端

請求頻率限制 limit req module 主要用於限制每乙個定義的金鑰的請求的處理速率,特別是從乙個單一的ip位址的請求的處理速率 請求的完成量限制 vim usr local nginx conf nginx.conf38 limit req zone binary remote addr ...

Jsp處理客戶端請求

什麼是jsp內建物件 jsp內建物件是 web 容器建立的一組物件 jsp內建物件out out物件用於向瀏覽器輸出資料 其常用的方法是print 該方法用於在頁面中顯示字串資訊。jsp內建物件request request物件主要用於處理客戶端請求 request物件常用方法 4.jsp內建物件r...