nginx配置指令之server_name的具体使用


Posted in Servers onAugust 14, 2022

前言

作为nginx的http模块中的重要指令,对于使用nginx的同学来说,有必要做深入的了解;

server_name指令

用于设置虚拟主机服务名称,如:127.0.0.1 、 localhost 、域名[www.baidu.com | www.jd.com]

nginx配置指令之server_name的具体使用

关于 server_name 的配置方式有三种,分别是:

  • 精确匹配
  • 通配符匹配
  • 正则表达式匹配

精确匹配配置

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

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

nginx配置指令之server_name的具体使用

 需要注意的是,如果是在实际的生产服务器上面进行配置的话,域名一定是有效的,server_name可以配置多个,然后重启nginx服务,访问下试试,可以看到通过两种方式都可以访问到nginx;

nginx配置指令之server_name的具体使用

nginx配置指令之server_name的具体使用

 通配符模式配置

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

如本地的nginx按照上面的配置,重启nginx服务之后,通过浏览器进行访问,可以看到均可以访问到;

nginx配置指令之server_name的具体使用

nginx配置指令之server_name的具体使用

nginx配置指令之server_name的具体使用

正则表达式配置

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服务,浏览器访问上面的地址,可以看到仍然能正常访问

nginx配置指令之server_name的具体使用

server_name与host匹配优先级如下:

1、完全匹配

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

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

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

如果都不匹配

1、优先选择listen配置项后有default或default_server的

2、找到匹配listen端口的第一个server块

 到此这篇关于nginx配置指令之server_name的具体使用的文章就介绍到这了,更多相关nginx server_name内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Servers 相关文章推荐
Nginx同一个域名配置多个项目的实现方法
Mar 31 Servers
Nginx+Tomcat负载均衡多实例详解
Apr 11 Servers
centos7安装mysql5.7经验记录
May 02 Servers
tomcat默认最大连接数及相关调整方法
May 06 Servers
docker 制作mysql镜像并自动安装
May 20 Servers
Nginx 配置 HTTPS的详细过程
May 30 Servers
ubuntu下常用apt命令介绍
Jun 05 Servers
openEuler 搭建java开发环境的详细过程
Jun 10 Servers
Windows server 2022创建创建林、域树、子域的步骤
Jun 25 Servers
vscode内网访问服务器的方法
Jun 28 Servers
Nginx代理Redis哨兵主从配置的实现
Jul 15 Servers
windows server2012 R2下安装PaddleOCR服务的的详细步骤
Sep 23 Servers
ssh服务器拒绝了密码 请再试一次已解决(亲测有效)
Windows server 2016服务器基本设置
Windows Server 2016服务器用户管理及远程授权图文教程
Nginx 502 bad gateway错误解决的九种方案及原因
Aug 14 #Servers
Tomcat安装使用及部署Web项目的3种方法汇总
Aug 14 #Servers
SpringBoot前端后端分离之Nginx服务器下载安装过程
Docker容器harbor私有仓库部署和管理
Aug 05 #Servers
You might like
PHP读取txt文本文件并分页显示的方法
2015/03/11 PHP
PHP的Laravel框架中使用消息队列queue及异步队列的方法
2016/03/21 PHP
PHP文件操作详解
2016/12/30 PHP
Laravel实现短信注册的示例代码
2018/05/29 PHP
基于jquery的跨域调用文件
2010/11/19 Javascript
jQuery制作仿Mac Lion OS滚动条效果
2015/02/10 Javascript
JS+CSS实现带小三角指引的滑动门效果
2015/09/22 Javascript
用NodeJS实现批量查询地理位置的经纬度接口
2016/08/16 NodeJs
javascript 正则表达式分组、断言详解
2017/04/20 Javascript
React/Redux应用使用Async/Await的方法
2017/11/16 Javascript
浅谈VUE单页应用首屏加载速度优化方案
2018/08/28 Javascript
深入探讨JavaScript的最基本部分之执行上下文
2019/02/12 Javascript
Element 默认勾选表格 toggleRowSelection的实现
2019/09/04 Javascript
kafka调试中遇到Connection to node -1 could not be established. Broker may not be available.
2019/09/17 Javascript
微信小程序开发(二):页面跳转并传参操作示例
2020/06/01 Javascript
python类和函数中使用静态变量的方法
2015/05/09 Python
使用Python进行QQ批量登录的实例代码
2018/06/11 Python
利用python和ffmpeg 批量将其他图片转换为.yuv格式的方法
2019/01/08 Python
浅析Python 读取图像文件的性能对比
2019/03/07 Python
Python单元测试工具doctest和unittest使用解析
2019/09/02 Python
Python 实现递归法解决迷宫问题的示例代码
2020/01/12 Python
python线程join方法原理解析
2020/02/11 Python
Python 解决火狐浏览器不弹出下载框直接下载的问题
2020/03/09 Python
python设置表格边框的具体方法
2020/07/17 Python
Python性能测试工具Locust安装及使用
2020/12/01 Python
几个CSS3的flex弹性盒模型布局的简单例子演示
2016/05/12 HTML / CSS
Juicy Couture Beauty官方网站:香水和化妆品
2019/03/12 全球购物
ruby如何进行集成操作?Ruby能进行多重继承吗?
2013/10/16 面试题
应届生自我鉴定
2013/12/11 职场文书
美德好少年主要事迹
2014/01/29 职场文书
文明社区申报材料
2014/08/21 职场文书
2014年民主评议党员个人总结
2014/09/24 职场文书
师德师风自查材料
2014/10/14 职场文书
Win11绿屏怎么办?Win11绿屏死机的解决方法
2021/11/21 数码科技
Python实现将多张图片合成MP4视频并加入背景音乐
2022/04/28 Python
MySql如何将查询的出来的字段进行转换
2022/06/14 MySQL