阻止不包含查询字符串的URL

时间:2013-12-15 12:17:33

标签: regex apache .htaccess mod-rewrite query-string

使用mod_rewrite如何阻止 NOT 包含查询字符串的URL。

我的网站在几个不同的文件夹中使用/get.php?page=blah

我看到很多机器人/东西在没有查询字符串的情况下命中每个文件get.php。所以我想在没有?page = what

的情况下拒绝访问get.php

我正在努力解决这个问题

RewriteCond %{THE_REQUEST} \^get.php$  [NC]  
RewriteRule .*  - [F]

我搜索的关于这一点的所有内容都提出了如何将查询字符串转换为友好的URL,但这不是我想要实现的目标。

1 个答案:

答案 0 :(得分:0)

您可以在DOCUMENT_ROOT/.htaccess文件中使用此代码:

RewriteEngine On

RewriteCond %{QUERY_STRING} ^$
RewriteRule (^|/)get\.php$ - [NC,F]