濮阳杆衣贸易有限公司

主頁 > 知識庫 > nginx用正則表達式實現(xiàn)泛域名自動匹配目錄的方法

nginx用正則表達式實現(xiàn)泛域名自動匹配目錄的方法

熱門標簽:云南電商智能外呼系統(tǒng)哪家好 廈門防封電銷電話卡 濰坊寒亭400電話辦理多少錢 外呼系統(tǒng)全國 地圖標注員有發(fā)展前景嗎 宜賓銷售外呼系統(tǒng)軟件 四川保險智能外呼系統(tǒng) 地圖標注能更改嗎 高德地圖標注公司需要錢

nginx用正則表達式實現(xiàn)泛域名自動匹配目錄

用nginx可以實現(xiàn)虛擬主機的功能,可以綁定多個網(wǎng)址。
通常主域名都是寫死在配置里面的,所以要增加匹配時,需要手動添加。

基本寫法

最基本的寫法是server{
listen 80;
server_name www.a.com;
root /html/a;
…
}

server{
listen 80;
server_name www.b.com;
root /html/b;
…
}

正則式寫法

域名綁定后,自動匹配到相應的目錄中,不需要一個一個域名去寫配置。
匹配目錄為:html/域名/二級域名,例如www.baidu.com會匹配到baidu.com/www目錄下

server {
 listen 80;
 # $subdomain 將匹配到二級域名級以上
 # $domain 將匹配到一級域名
 # $tld 將匹配到根節(jié)點名
 server_name ~^((?<subdomain>.*)\.)?(?<domain>[^.]+)\.(?<tld>[a-zA-Z]+)$;

 #如果沒有$subdomain,則跳轉(zhuǎn)到www
 if ($subdomain = "") {
  # set $subdomain "_";
  set $subdomain "www";
  return 301 $scheme://www.$domain.$tld$request_uri;
 }

 root /usr/share/nginx/html/${domain}.${tld}/${subdomain};
}

其他

nginx 的匹配順序,搜索一下有很多文章,我就不詳細說了。
因為正則表達式的匹配優(yōu)先級最低,只有當其他都匹配不到時才會進行正則表達式的匹配,所以不用擔心影響其他的精確匹配。

一般人不會有那么多的域名要匹配,相反,是要屏蔽掉一些惡意的域名指向。

但是測試的時候,為了不影響正在運行的網(wǎng)頁,可以在hosts中添中一條ip 域名記錄,用不存在的域名來測試,這時候就比較有用了。

總結(jié)

到此這篇關于nginx用正則表達式實現(xiàn)泛域名自動匹配目錄的文章就介紹到這了,更多相關nginx正則表達式泛域名匹配目錄內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

標簽:湛江 巴彥淖爾 德州 滁州 紅河 廊坊 回訪 廣安

巨人網(wǎng)絡通訊聲明:本文標題《nginx用正則表達式實現(xiàn)泛域名自動匹配目錄的方法》,本文關鍵詞  nginx,用,正則,表達式,實現(xiàn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關。
  • 相關文章
  • 下面列出與本文章《nginx用正則表達式實現(xiàn)泛域名自動匹配目錄的方法》相關的同類信息!
  • 本頁收集關于nginx用正則表達式實現(xiàn)泛域名自動匹配目錄的方法的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    尼勒克县| 阿克苏市| 贡觉县| 滁州市| 寿宁县| 三明市| 札达县| 公安县| 上饶市| 长治县| 平南县| 昌乐县| 石楼县| 道孚县| 泗洪县| 滨州市| 五台县| 阜阳市| 巴青县| 泌阳县| 留坝县| 宁武县| 阳朔县| 永福县| 高密市| 武宣县| 余姚市| 左权县| 桂东县| 丽水市| 中宁县| 裕民县| 内江市| 舒城县| 穆棱市| 龙里县| 滨海县| 永德县| 和田县| 阿尔山市| 宣化县|