I’m looking for a method, or a way to detect clients using any type of proxy server viewing my web site. I’m using PHP/Apache… what’s the best way to do this? Any proxy server would need to be detected, not specifically one or the other.
Edit
I am more interested in the anonymous proxies… as the normal ones are easily detected by looking for HTTP_X_FORWARDED_FOR.
Another Edit
Try this:
1) go to http://kproxy.com (or any other free anonymous proxy site)
2) visit: http://www.worldofwarcraft.com
3) they are able to block somehow, as the page errors out with “Error loading stylesheet: A network error occurred loading an XSLT stylesheet:http://kproxy.com/new-hp/layout/layout.xsl“
I want to do something similar to prevent proxies.
You can’t detect that unless they pass on special headers which explictly mention it like X-Forwarded-For or something.
As far as I know you have to use a blacklist. Users who use putty portforwarding, VPN or other more sophisticated methods are undetactable as they behave exactly like normal users.