linux伪静态 (大括号转义)

zblog1年前zblog问题解答58
大括号转义问题:
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

相关文章

宝塔升级到最新版 python升级 重新执行更新命令,重新安装面板使用的python环境,此操作不会对您的网站、数据库等造成影响,仅仅是针对面板使用的环境修复。

1、将当前Python环境做个备份的操作mv /www/server/panel/pyenv/ /www/backup/pyenv_backup2、重新执行更新命令,重新安装面板使用的python环境...

页面全屏 弹出框

<!DOCTYPE html> <html lang="en"> <head>    &...

Storage engine MylSAM is disabled (Table creation is disallowed). mysql8++  MyISAM 或 InnoDB(8默认)数据库

Storage engine MylSAM is disabled (Table creation is disallowed). mysql8++ MyISAM 或 InnoDB(8默认)数据库

Storage engine MylSAM is disabled (Table creation is disallowed). mysql8++  MyISAM 或 InnoDB(8默认...

http?https?相对协议? // 相对协议  相对协议的主要作用是根据当前页面的协议(HTTP或HTTPS)来自动选择使用哪个协议来加载资源。

http?https?相对协议? // 相对协议 相对协议的主要作用是根据当前页面的协议(HTTP或HTTPS)来自动选择使用哪个协议来加载资源。

相对协议的主要作用是根据当前页面的协议(HTTP或HTTPS)来自动选择使用哪个协议来加载资源。当你在HTML中使用一个以//开头的URL时,浏览器会检查当前页面是通过HTTP还是HTTPS加载的,并...

php 把\u8D8A\u8D70\u8D8A\u5E26\u52B2\ 转为中文 或正常字符

为了将 Unicode 编码转换为正常字符,你可以使用 json_decode 来处理这个字符串,但需要先将它包装成一个有效的 JSON 格式字符串。具体来说,可以将你的字符串放在双引号内,并确保它是...