我有一个页面容易受到攻击,因此,为了减少匿名攻击,我在我的.htaccess我在网上找到的:
# BLOCK PROXY VISITS
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP:VIA} !^$ [OR]
RewriteCond %{HTTP:FORWARDED} !^$ [OR]
RewriteCond %{HTTP:USERAGENT_VIA} !^$ [OR]
RewriteCond %{HTTP:X_FORWARDED_FOR} !^$ [OR]
RewriteCond %{HTTP:PROXY_CONNECTION} !^$ [OR]
RewriteCond %{HTTP:XPROXY_CONNECTION} !^$ [OR]
RewriteCond %{HTTP:HTTP_PC_REMOTE_ADDR} !^$ [OR]
RewriteCond %{HTTP:HTTP_CLIENT_IP} !^$
RewriteRule .* - [F]
</IfModule>
我的问题是,一个广告商在公司内部使用代理,因此无法访问我的页面。我对正则表达式一无所知,尽管我思考当我看到它时我就能认出它,例如“哦,看一个正则表达式“我认为上述条件是正则表达式,但我不知道如何改变它们,仅有的来自该特定静态 IP 的代理访问不被禁止。
如果可能的话我该如何实现?提前谢谢您!
答案1
在下面一行中RewriteEngine on
添加以下规则:
RewriteCond %{REMOTE_ADDR} ^12\.34\.56\.78$
RewriteRUle ^ - [L]
这将允许来自12.34.56.78无需经过代理检查(代理检查应在之后进行)即可通过。