nginx中的if語句

2021-09-26 09:58:12 字數 1020 閱讀 9658

if指令

格式:if (條件判斷)
一、if語句中的判斷條件(nginx)

1、正規表示式匹配:

==:等值比較;

~:與指定正規表示式模式匹配時返回「真」,判斷匹配與否時區分字元大小寫;

~*:與指定正規表示式模式匹配時返回「真」,判斷匹配與否時不區分字元大小寫;

!~:與指定正規表示式模式不匹配時返回「真」,判斷匹配與否時區分字元大小寫;

!~*:與指定正規表示式模式不匹配時返回「真」,判斷匹配與否時不區分字元大小寫;

2、檔案及目錄匹配判斷:

-f, !-f:判斷指定的路徑是否為存在且為檔案;

-d, !-d:判斷指定的路徑是否為存在且為目錄;

-e, !-e:判斷指定的路徑是否存在,檔案或目錄均可;

-x, !-x:判斷指定路徑的檔案是否存在且可執行;

示例1

if ($request_method = post)  //當請求的方法為post時,直接返回405狀態碼

示例2

if ($http_user_agent ~ msie) //user_agent帶有msie字元的請求,直接返回403狀態碼

如果想同時限制多個user_agent,還可以寫成這樣

示例3

if(!-f $request_filename)  //當請求的檔案不存在,將會執行下面的rewrite規則

示例4

if($request_uri ~* 'gid=\d/')  //\d表示數字,表示數字出現的次數是9到12次,如gid=123456789/就是符合條件的。

示例5

if (!-f $request_filename)

Nginx中if語句中的判斷條件

一 if語句中的判斷條件 nginx 1 正規表示式匹配 等值比較 與指定正規表示式模式匹配時返回 真 判斷匹配與否時區分字元大小寫 與指定正規表示式模式匹配時返回 真 判斷匹配與否時不區分字元大小寫 與指定正規表示式模式不匹配時返回 真 判斷匹配與否時區分字元大小寫 與指定正規表示式模式不匹配時返...

Nginx中if語句中的判斷條件

一 if語句中的判斷條件 nginx 1 正規表示式匹配 等值比較 與指定正規表示式模式匹配時返回 真 判斷匹配與否時區分字元大小寫 與指定正規表示式模式匹配時返回 真 判斷匹配與否時不區分字元大小寫 與指定正規表示式模式不匹配時返回 真 判斷匹配與否時區分字元大小寫 與指定正規表示式模式不匹配時返...

Nginx中if語句的判斷條件與多條件判斷詳解

一 if語句中的判斷條件 nginx 介紹 1 正規表示式匹配 等值比較 與指定正規表示式模式匹配時返回 真 判斷匹配與否時區分字元大小寫 與指定正規表示式模式匹配時返回 真 判斷匹配與否時不區分字元大vfjwwxi小寫 與指定正規表示式模式不匹配時返回 真 判斷匹配與否時區分字元大小寫 與指定正規...