小知识:图文详解Nginx多种匹配方式

前言

首先建立两个不同的路径的页面做测试

%小知识:图文详解Nginx多种匹配方式-猿站网-插图

%小知识:图文详解Nginx多种匹配方式-1猿站网-插图

然后打开/usr/local/nginx/conf目录下的ngnix.conf

%小知识:图文详解Nginx多种匹配方式-2猿站网-插图

可以看到

%小知识:图文详解Nginx多种匹配方式-3猿站网-插图

每一个server都可以定义一个访问的转发到的路径

端口转发

?
1
2
3
4
5
6
7
8
9
10
11
12
13
listen       878;#当访问878端口组时
server_name  localhost;
#charset koi8-r;
#access_log  logs/host.access.log  main;
location / {
root   /www/zthwww/w2;#访问878端口时,访问这个路径下的index.html文件
index  index.html index.htm;
}
}

重新启动ngnix

?
1
/usr/local/nginx/sbin/nginx -s reload

如果报一下错误,说明是配置文件格式错误,检查配置的server的大括号位置是否匹配,格式是否正确

%小知识:图文详解Nginx多种匹配方式-4猿站网-插图

测试结果

%小知识:图文详解Nginx多种匹配方式-5猿站网-插图

 利用访问地址转发

在进行这步操作时,必须确保dns解析中,已经添加*前缀解析

%小知识:图文详解Nginx多种匹配方式-6猿站网-插图

然后还是在conf文件中

?
1
2
3
4
5
6
7
8
9
10
11
12
13
server {
listen       80;
server_name  zth2.zhangdd1915.top;#修改为任意的xxx.自己域名的格式
#charset koi8-r;
#access_log  logs/host.access.log  main;
location / {
root   /www/zthwww/w1;#指定路径
index  index.html index.htm;
}
}

(注意端口号和虚拟主机名不能重复,否则会报错)再次重新启动ngnix

测试

%小知识:图文详解Nginx多种匹配方式-7猿站网-插图

同一个server可以同时配置多个主机名

例如

?
1
2
3
4
5
6
7
8
9
10
11
12
13
server {
listen       80;
server_name  zth2.zhangdd1915.top zth3.zhangdd1915.top;#主机名1 空格 主机名2的形式
#charset koi8-r;
#access_log  logs/host.access.log  main;
location / {
root   /www/zthwww/w1;
index  index.html index.htm;
}
}

重启测试

%小知识:图文详解Nginx多种匹配方式-8猿站网-插图

前置匹配

?
1
2
3
4
5
6
7
8
9
10
11
12
13
server {
listen       80;
server_name  *.zhangdd1915.top;#只要是以 .zhangdd1915.top结尾都会匹配到此
#charset koi8-r;
#access_log  logs/host.access.log  main;
location / {
root   /www/zthwww/w1;
index  index.html index.htm;
}
}

注意这个一定要写在最前面,因为先写的先匹配,在之前的dns解析中已经谢了*,所以会自动匹配到默认的,所以要写在首位

重启测试 

%小知识:图文详解Nginx多种匹配方式-9猿站网-插图

后置匹配

?
1
2
3
4
5
6
7
8
9
10
11
12
13
server {
listen       878;
server_name  zhangdd1915.*;
#charset koi8-r;
#access_log  logs/host.access.log  main;
location / {
root   /www/zthwww/w2;
index  index.html index.htm;
}
}

 由于我只有一域名,这里就不做测试了。

正则匹配

?
1
2
3
4
5
6
7
8
9
10
11
12
13
server {
listen       878;
server_name  ~^[0-9]+\.zhangdd1915\.top$;
#charset koi8-r;
#access_log  logs/host.access.log  main;
location / {
root   /www/zthwww/w1;
index  index.html index.htm;
}
}

例如前缀是n个数字开头

总结

到此这篇关于nginx多种匹配方式的文章就介绍到这了,更多相关nginx匹配方式内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_56289362/article/details/124740568

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:linux下查看本机和远程服务器的端口是否连通的方法

2023-3-16 2:46:05

建站知识

小知识:linux采用scp命令拷贝文件到本地,拷贝本地文件到远程服务器的方法

2023-3-16 2:54:12

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索