日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

nginx配置指令之server_name的具體使用_nginx

作者:逆風飛翔的小叔 ? 更新時間: 2022-10-05 編程語言

前言

作為nginx的http模塊中的重要指令,對于使用nginx的同學來說,有必要做深入的了解;

server_name指令

用于設置虛擬主機服務名稱,如:127.0.0.1 、 localhost 、域名[www.baidu.com | www.jd.com]

關于 server_name 的配置方式有三種,分別是:

  • 精確匹配
  • 通配符匹配
  • 正則表達式匹配

精確匹配配置

server {
	listen 80;
	server_name www.baidu.com www.localhost;
}

如下:在windows本地的nginx.conf配置文件中配置了如下參數

?需要注意的是,如果是在實際的生產服務器上面進行配置的話,域名一定是有效的,server_name可以配置多個,然后重啟nginx服務,訪問下試試,可以看到通過兩種方式都可以訪問到nginx;

?通配符模式配置

server_name 中支持通配符 "*", 但需要注意的是通配符不能出現在域名的中間,只能出現在首段或尾段
server_name localhost www.zcy.*;

如本地的nginx按照上面的配置,重啟nginx服務之后,通過瀏覽器進行訪問,可以看到均可以訪問到;

正則表達式配置

server_name 中可以使用正則表達式,并且使用 ~ 作為正則表達式字符串的開始標記
代碼
說明
^
匹配搜索字符串開始位置
$
匹配搜索字符串結束位置
.
匹配除換行符 \n 之外的任何單個字符
\
轉義字符,將下一個字符標記為特殊字符
[xyz]
字符集,與任意一個指定字符匹配
[a-z]
字符范圍,匹配指定范圍內的任何字符
\w
與以下任意字符匹配 A-Z a-z 0-9 和下劃線 , 等效于 [A-Za-z0-
9_]
\d
數字字符匹配,等效于 [0-9]
{n}
正好匹配 n 次
{n,}
至少匹配 n 次
{n,m}
匹配至少 n 次至多 m 次
*
零次或多次,等效于 {0,}
+
一次或多次,等效于 {1,}
?
零次或一次,等效于 {0,1}

實際配置案例

server_name ~^www\.(\w+)\.com$;

重啟nginx服務,瀏覽器訪問上面的地址,可以看到仍然能正常訪問

server_name與host匹配優先級如下:

1、完全匹配

2、通配符在前的,如*.test.com

3、在后的,如www.test.*

4、正則匹配,如~^\.www\.test\.com$

如果都不匹配

1、優先選擇listen配置項后有default或default_server的

2、找到匹配listen端口的第一個server塊

原文鏈接:https://blog.csdn.net/congge_study/article/details/124907421

欄目分類
最近更新