评论

收藏

[Nginx] nginx 匹配规则小总结(推荐)

web服务器 web服务器 发布于:2021-08-14 17:55 | 阅读数:343 | 评论:0

nginx location
等号类型(=)的优先级最高,需要精确匹配。一旦匹配成功,则不再查找其他匹配项。
^~类型表达式。一旦匹配成功,则不再查找其他匹配项。
正则表达式类型(~ ~*)的优先级次之。如果有多个location的正则能匹配的话,则使用正则表达式最长的那个。
(location =) > (location 完整路径) > (location ^~ 路径) > (location ~,~* 正则顺序) > (location 部分起始路径) > (/)
nginx 配置 proxy_pass 路径带 / 的问题
用户访问的 url 为 http://klvchen.com/abc/test.html
eg:
#情况1: proxy_pass 后带 / 
location /abc/ {
    proxy_pass http://klvchen.com/;
} 
#会被代理成 http://klvchen.com/test.html
#情况2: proxy_pass 后不带 / 
location /abc/ {
    proxy_pass http://klvchen.com;
} 
#会被代理成 http://klvchen.com/abc/test.html
常用正则
.: 匹配除换行符以外的任意字符
?: 重复0次或1次
+: 重复1次或更多次
*: 重复0次或更多次
\d:匹配数字
^: 匹配字符串的开始
$: 匹配字符串的结束
{n}: 重复n次
{n,}: 重复n次或更多次
[c]: 匹配单个字符c
[a-z]: 匹配a-z小写字母的任意一个
小括号()之间匹配的内容,可以在后面通过$1来引用,$2表示的是前面第二个()里的内容。正则里面容易让人困惑的是\转义特殊字符。
总结
以上所述是小编给大家介绍的nginx 匹配规则小总结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://www.cnblogs.com/klvchen/archive/2018/07/23/9353917.html

关注下面的标签,发现更多相似文章