Ответ 1
После поиска Google для php detect http proxies
я придумал следующее:
http://forums.digitalpoint.com/showthread.php?t=58964
http://forums.digitalpoint.com/showthread.php?t=365467
http://www.roscripts.com/PHP_Proxy_Detector-75.html
... и целый ряд других интересных хитов.
EDIT:
AFAIK нет способа обнаружить HTTP-прокси с абсолютной уверенностью или безопасно:
-
Услуги анонимайзера не добавляют соответствующие заголовки к их запросам - на самом деле они удаляют некоторые из них. Вам необходимо сохранить список самых популярных сервисов анонимайзера и их блоки IP-адресов и обнаружить их таким образом. Есть несколько списков в режиме онлайн, которые вы можете использовать, но они далеки от завершения, особенно если вы считаете, что большинство крупных учреждений (интернет-провайдеров, компаний, университетов и т.д.) Предоставляют прокси-сервер для своих пользователей. Некоторые даже требуют, чтобы их пользователи использовали их.
-
Многие HTTP-прокси настроены так, что они просто пересылают запросы без изменения заголовков.
-
Установки VPN имеют тот же эффект, что и прокси-сервер HTTP, а именно разрешение HTTP-запросов исходить из другого IP-адреса, кроме того, что у компьютера, на котором находится веб-браузер, не являясь одним из них.
-
Любой SSH-сервер может использоваться как прокси-сервер SOCKS его пользователями, что на самом деле невозможно обнаружить, поскольку он не является прокси-сервером HTTP.
-
Существует много законных HTTP-прокси, которые не доступны для публики. Например есть HTTP прокси-продукты, которые установлены в домашней сети и обеспечить родительский контроль и сомнительного содержания (порнография, фишинг-сайты и т.д.) фильтрации для всей сети.
Какое злоупотребление вы видите, где может быть полезно обнаружение HTTP-прокси?