禁止使用空用户代理,但允许使用htaccess

时间:2016-02-25 22:29:07

标签: .htaccess user-agent

我想阻止空的用户代理,但是在网站的脚本中,有一些代码片段使用了file_get_contents函数,该函数也会被阻止。我试图将标头添加到file_get_contents,但它并不好。所以我尝试使用htaccess绕过localhost。

以下是htaccess中的规则:

#Block empty User-Agents
RewriteCond %{HTTP_USER_AGENT} ^-?$
RewriteCond %{HTTP_HOST} !^http://(.*\.)?example\.com [NC]
RewriteRule ^ - [F]

但它没有炒作。我该怎么改变?提前谢谢。

1 个答案:

答案 0 :(得分:0)

经过多次编辑和测试后,我认为它有效:

#Block empty User-Agents
RewriteCond %{HTTP_USER_AGENT} ^-?$ [NC]
RewriteCond %{HTTP_HOST} !^http://(.*\.)?example\.com [NC]
RewriteCond %{REQUEST_URI} !^/url [NC]
RewriteRule ^ - [F]

也尝试过:

#RewriteCond %{HTTP_HOST} !^(127\.0\.0\.1|localhost) [NC]
#RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1

没有帮助。只有REQUEST_URI有效。