2009-09-25 19 views
4

如果您使用公共代理訪問whatismyipaddress.com,它會報告您的代理IP,但它也會(通常)報告您正在使用代理,並且您的始發IP以及在許多情況下。確定引用Url是否在代理後

它是如何做到這一點的?

類似的網站,如Gmail和Craigslist,可以告訴連接到他們的計算機是否也是代理服務器。

我有一個網站的數據可以自由瀏覽200x/day/ip,但我想保護它免受使用代理的人的收穫。

有關如何完成這些任何提示或見解,我們都很感激。

回答

1

請檢查this SO線程。它解釋瞭如何做到這一點。這是標籤爲PHP,但我認爲的想法在這裏保持不變。

**編輯:**我在這裏重複接受的答案以供參考:

TOR不提供任何服務器頭 如X_FORWARDED_FOR,所以你最好 的辦法是使用列表所有已知的退出 節點。列表可以在 https://torstat.xenobite.eu/找到。

對於其他代理,您可以查看 服務器標頭。可能的服務器 感興趣的標題包括:

  • HTTP_VIA
  • HTTP_X_FORWARDED_FOR
  • HTTP_FORWARDED_FOR
  • HTTP_X_FORWARDED
  • HTTP_FORWARDED
  • HTTP_CLIENT_IP
  • HTTP_FORWARDED_FOR_IP
  • VIA
  • X_FORWARDED_FOR
  • FORWARDED_FOR
  • X_FORWARDED
  • 轉發
  • CLIENT_IP
  • FORWARDED_FOR_IP
  • HTTP_PROXY_CONNECTION

在PHP中,你可以在$ _ SERVER [這些 字段的值]超全球。