首頁  >  問答  >  主體

php - 請教:怎麼判斷網站訪客是否使用了代理IP?

網站需要寫個防止代理網路存取的功能,網路上找的資料大多都是No收場,所以只好來尋求各位大神的幫助了。

拿到這個需求第一反應是判斷頭訊息,一根煙後問題就一大堆了、行不通,現在好多VPN自帶了模擬各種端的頭信息功能,麻煩有寫過類似功能的朋友給指點一二。

PHP中文网PHP中文网2680 天前737

全部回覆(2)我來回復

  • 怪我咯

    怪我咯2017-05-24 11:34:34

    理論上是無解的。

    誠實的代理會透過X-Forwarded-For這樣的Header把來源IP告訴目標網站,但就是有很多不誠實的代理(稱為匿名透明代理),不是把這些資訊遮掩掉了,就是弄些假的來源。

    所以就看你出於什麼樣的目的防止用戶訪問了,如果只是保護服務器的話,可以把訪問頻繁的IP地址禁掉,如果防止機器人自動獲取信息,就可以你覺得某個來源訪問頻繁時,跳躍驗證碼。

    有興趣的話可以在網路上搜尋下反爬蟲這樣的話題。

    回覆
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-24 11:34:34

    confirm("訪客你好,老實說你使用了代理商嗎");
    開個玩笑;

    個人覺得無解,不然還拿VPN來幹什麼呢,更別說還有全域代理的VPN。

    期待其他答主給出比較好的方案。

    回覆
    0
  • 取消回覆