nginx做泛網域名稱解析的網域名稱的正則判斷

2022-06-24 06:33:11 字數 1417 閱讀 1491

網域名稱的泛網域名稱解析

nginx可以直接做泛網域名稱解析

需要使用nginx的正則

^: 匹配字串的開始位置;

$:匹配字串的結束位置;

.和: .匹配任意字元,匹配數量0到正無窮;

\ 將後面接著的字元標記為乙個特殊字元或者乙個原義字元或乙個向後引用, 例如,. 斜槓用來轉義,.匹配 . ;

(值1|值2|值3|值4):或匹配模式,例:(jpg|gif|png|bmp)匹配jpg或gif或png或bmp

i不區分大小寫

*~ 為區分大小寫匹配

~* 為不區分大小寫匹配

!和!*分別為區分大小寫不匹配及不區分大小寫不匹配

(pattern) 匹配括號內的pattern

nginx是支援[a-za-z]和的,但是{}與conf的衝突,所以,匹配規則一定要用""包含起來

需要使用nginx的判斷if

# 示例一

if ($host !~* "^[a-za-z0-9_]\.test\.domain\.com$")

# 示例二

if ($host ~* ^newhouse\.(.+)?\.house365\.com)

需要使用nginx的變數,例如,下面的泛網域名稱解析

server_name ~^(?.+)\.test\.domain\.com$;

if ($subdomain !~* "^[a-za-z0-9]$")

需要使用nginx的return

不設定severname 直接判斷$host

server \.test\.domain\.com$") 

location /

}

設定server_name取出變化的部分,再判斷

server $") 

location /

}

字元長度判斷 需要給整個規則加上""

實現1的時候,因為沒有看過網上有加雙引號的案例,所以不敢加 $host !~* ^[a-za-z0-9_]\.test\.domain\.com$ 一直報錯,一度懷疑nginx是否支援長度的判斷

在severname中一直無法,實現直接判斷長度,所以才有2的變種實現

server_name ~ "^[a-za-z0-9_]\.test\.domain\.com$";一直報server_name不是以;為結束的錯誤

nginx 常見正則匹配符號表示

nginx location正則匹配規則

nginx 正規表示式

nginx進行網域名稱重寫和泛網域名稱解析配置的方法

nginx泛網域名稱解析,實現多個二級網域名稱

泛網域名稱解析

什麼是泛網域名稱解析,泛網域名稱解析又該怎樣做?下面將介紹幾種方法 什麼是泛網域名稱解析 泛網域名稱解析是指將 網域名稱 解析到同一ip。在網域名稱前新增任何子網域名稱 均可訪問到所指向的web位址。也就是客戶的網域名稱a.com之下所設的 a.com全部解析到同乙個ip位址上去。比如客戶設b.a....

Nginx泛網域名稱解析設定 時間

泛網域名稱解析 server name www.002pc.com 002pc.com server name in redirect off 設定預設root set rootdir usr local nginx html 002pc 匹配 網域名稱 if host 匹配二級網域名稱 if ho...

Apache泛網域名稱解析

documentroot e work phpstudy www ncpx web servername ncpxceshi2.com 主機名 serveralias ncpxceshi2.com 範解析 options followsymlinks execcgi allowoverride al...