【发布时间】:2022-04-27 00:19:38
【问题描述】:
我想检查 URL 是否有控制字符代码,例如 0x00,0x01..0x1f 和 0x7f
example.com/test.php?status0x01Http../
如果需要重定向到404页面。如果不存在该字符,则重定向到被访问的页面。
我想在.htaccess 中实现这一目标。
试过了
RewriteRule ^/?(.*)>$ /$1 [L,R=301]
以上代码删除所有字符
【问题讨论】:
-
你尝试了什么,遇到了什么问题?
-
RewriteRule 仅将模式应用于 URL 的路径组件。如果你想根据查询字符串内容做任何事情,你需要使用 RewriteCond 来做到这一点。
-
"上面的代码删除所有字符" - 上面的代码不会那样做。
sample.com/test.php?status0x01Http../- 大概是0x01你的意思是十六进制代码 01 的序数字符,所以 URL 不包含示例中所述的字符?
标签: apache .htaccess redirect mod-rewrite query-string