linux伪静态 (大括号转义)

zblog1年前zblog问题解答82
大括号转义问题:
Nginx配置文件中,大括号{}默认用于配置块(如server{}),直接用在正则表达式中会被误解析。
解决方案:用单引号包裹正则表达式(推荐),或转义大括号(但转义可能不生效,不推荐)。

直接写 : (×××××)错错错错错错错
rewrite ^/chengji/nian/(\d{4}).html /chengji/nian.php?nian=$1 last;
因为 {} 是用于配置块,会无解析,报错,不符合规则。

正确写法:(用单引号包住 含有 花括号 的正则表达式 )对对对对
rewrite '^/chengji/nian/(\d{4}).html' /chengji/nian.php?nian=$1 last;

# 或(不推荐,可能因转义不彻底失效)
rewrite ^/chengji/nian/(\d\{4\}).html$ /chengji/nian.php?nian=$1 last;


#############################################################
总结::::::::::::::::::::::::::
#############################################################

没有花括号 (如 {1}这样的量词 )可以

rewrite ^/chengji/nian/(\d+).html$ /chengji/nian.php?nian=$1 last; 

正则表达有花括号 (量词) 可以单引号包围

rewrite '^/chengji/nian/(\d{4}).html' /chengji/nian.php?nian=$1 last;

image.png

image.png

相关文章

linux时间错误 centos时间错误

timedatectl set-timezone Asia/Shanghai echo "Asia/Shanghai" | ...

php文件名字 去掉特殊字符 zblog实现

FormatString($article->Title, '[filename]') zb_system/function/c_system_common.ph...

通过在页面或自定义组件的 JSON 配置中添加以下配置开始适配

JSON 配置通过在页面或自定义组件的 JSON 配置中添加以下配置开始适配:{ "componentFramework": "glass-easel...

Nginx规则 重定向

location ~* /show/.*\.(?:jpg|webp) {   rewrite ^/show/(.*)$ /$1&...

python 并发执行 python 带参数的函数 比如 aaa(1) 参数是变化的 如从1到10 怎么并发 执行 a(1) 到A(10)

在Python中,你可以使用concurrent.futures模块中的ThreadPoolExecutor或ProcessPoolExecutor来并发执行函数。以下是一个使用ThreadPoolE...

多域名 缓存Nginx配置 伪静态

location ~* (runtime|application)/{    return 403;}location ~* \.html$ {  if (-e &quo...