拒绝从代理访问我的PHP网站

时间:2013-01-11 08:56:10

标签: php proxy phpbb phpbb3

这甚至可能吗?

我有一个运行PHPBB3的网站,有一个用户被禁止,但仍然不断回来。我发现他正在使用Proxies绕过他的知识产权禁令和新账户来绕过他的账户。

有没有办法确定主机是否正在使用代理? 或者,如果没有任何网站列出公共/免费代理,我可以添加我的禁令列表?

谢谢

3 个答案:

答案 0 :(得分:3)

只需将这些行添加到根.htaccess文件

即可
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]

了解更多相关信息,我了解了它,here

答案 1 :(得分:1)

是和否。您应该在这里查看出色的回复:https://superuser.com/questions/284927/how-to-get-the-real-ip-address-of-someone-using-a-proxy

但是,有些事情你可以做。只需启用电子邮件验证,并禁止电子邮件地址。他最终将耗尽他们。

如果他是垃圾邮件发送者,你可以尝试使用Advanced Block Mod(https://www.phpbb.com/customise/db/mod/advanced_block_mod/) - 它帮助我在俄罗斯垃圾邮件发送者所针对的一些网站上获得了很多:)

这就是我现在所能想到的一切。

答案 2 :(得分:0)

以下是一些想法:

  • 您可以检查X-Forwarded-For:标头以查看它是否匹配 $ _SERVER ['REMOTE_ADDR'],但这可能是恶意或配置错误的代理欺骗
  • 您可以找到开放代理列表,但是找不到完整列表。例如,我相信Tor项目维护一个退出节点列表。