【发布时间】:2017-05-16 00:26:23
【问题描述】:
所以我正在尝试编写一个规则,如果某些字符串被传递给任何 php 脚本,它将以 404 响应。这是我想出的:
RewriteBase /
RewriteCond %{QUERY_STRING} ^.*(string1|string2).*$ [NC]
RewriteRule ^$ [R=404,L]
该规则似乎只匹配 www.domain.com/?string1 或 www.domain.com/?String2,但不匹配 www.domain.com/whatever.php?var=string1 或 www.domain.com/ directory/script.php?var=string1 或 www.domain.com/directory/1/script.php?var=string1 等等。
谁能帮忙指出我做错了什么?
最好的,
-尤利安
【问题讨论】:
-
我还想补充一点,我已经尝试过 ^(.*)(string1|string2)(.*)$ 和 (string1|string2) 并且行为与上述相同。跨度>
标签: regex apache .htaccess mod-rewrite