首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >nginx简单正则表达式定位

nginx简单正则表达式定位
EN

Server Fault用户
提问于 2013-04-26 19:25:31
回答 2查看 39.6K关注 0票数 11

如果url的前5位数字是数字,我需要在nginx中设置一个位置参数。

代码语言:javascript
复制
site.com/12345/ or site.com/12345

但我不能为我的一生得到正确的正则表达式。

这些都不管用。

代码语言:javascript
复制
location ^/([0-9]) { }
location ^/(\d\d\d\d\d) {}
location /(\d\d\d\d\d) {}
EN

回答 2

Server Fault用户

发布于 2013-04-29 04:24:01

尝尝这个

代码语言:javascript
复制
location ~ "^/[\d]{5}" {
    # ...
}

~的意思是正则表达式的位置

^表示行的开头

[\d]是字符类匹配数字的缩写。

{5}显示数字必须正好是5,不多,也不差。

如果不想使用分组,例如$1,则不需要使用()括号。

双引号,因为regex中使用的curley大括号必须用双引号括起来:https://stackoverflow.com/questions/14684463/curly-braces-and-from-apache-to-nginx-rewrite-rules

票数 18
EN

Server Fault用户

发布于 2013-04-26 19:54:32

尝试这个语法(在我的服务器上测试):

代码语言:javascript
复制
location ~ ^/([0-9]+) {
  #...
}
票数 7
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/503002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档