低优先级的匹配比赛

低优先级的匹配比赛,第1张

nginx的优先匹配规则

nginx偏好选择的匹配标准


以=开头表示完全匹配。

如果在A中只匹配网站根目录末尾的请求,则不能跟随所有字符串。

~开头表示uri以基本字符串开头,不是常规匹配。

~开头表示英文中区分大小写的常规匹配;

~*开头表示不区分英文大小写的常规匹配。

/通用匹配。如果没有其他匹配,将匹配所有请求。


顺序不等于优先级:

(location=)>;(位置详细途径)>:(位置^~路线)>:(位置~,~*正则表达式顺序)>:(位置的部分起止途径)>:(/)


#首选标准

一般nginx代理都有几个tomcat,其中一个作为主页,其他的都只是作为套接字互相启用。

location  /cms {         index.html html       proxy_pass http://tomcat:8080; }


第二种是静态数据。自然也是用静态数据作为主页。都是死的,点击不会自动跳转。他们将立即投影本地文件目录。

location ^~ /static/ {     root /webroot/static/; } location ~* \.(gif|jpg|jpeg|png|css|js|ico)$ {     root /webroot/res/; }


第三是动静分离:

静态数据网络服务器放静态数据资源,nginx反过来:静态数据网络服务器浏览本地静态数据资源,打开80端口。

location = / {     root /data/www; } nginx web service做微商: location = / { index.html html     proxy_pass http://static server:80; }


第四个是socket激活,就是nginx代理tomcat。

location /api {     proxy_pass http://tomcat:8080/; }


举个简单的例子先选择匹配标准,不能完全模仿制造。开发和设计需要浏览www.xxx/cms,.,如果它是*。html,它会跳转到静态数据资源,其他的都跳转到tomcat池;。自然数据资源和tomcatpool下有index.html文档。经过我们自己的测试机测试,是可以保证的。


[root@www conf.d]# cat admin.conf  server {     listen       80;     server_name  localhost; location /cms {     root /data/www;     } location ~* /cms/.*\.html$ {     root /data/222; } }

文件目录下的文件内容如下:

[root@www conf.d]# ls admin.conf  default.conf.bak [root@www conf.d]# cat /data/222/cms/index.html  2 [root@www conf.d]# cat /data/www/cms/index.html  index1



浏览网址:http://172.16.2.24/cms/,看到默认设置为自动跳转。



成功检测与书写顺序无关,匹配优先。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/777718.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存