【问题标题】:Heroku - prevent scrapingHeroku - 防止刮擦
【发布时间】:2018-04-17 22:06:16
【问题描述】:

我正在查看我的排水日志,我看到了这个

327 <158>1 2018-04-17T22:03:27.578702+00:00 heroku router - - at=info method=GET path="/{url}" host={my_host} request_id=11bb9b05-dea3-42c2-b57a-9be6fb9b93d2 fwd="80.6.26.72,141.101.107.25" dyno=web.1 connect=0ms service=1ms status=200 bytes=6265 protocol=http

我确定这个请求不是来自合法用户,怎么可能挖掘更多并获得远程服务器IP?我在脚本中使用了https://stackoverflow.com/a/6837689/2513428 来检查 IP,但我认为它返回了 herocu 服务器的代理。

【问题讨论】:

    标签: heroku


    【解决方案1】:

    Heroku 使 IP 使请求在 fwd 日志字段中可用:https://devcenter.heroku.com/articles/http-routing#heroku-router-log-format

    您还可以通过查看X-Forwarded-For HTTP 标头在您的代码中阅读它。

    因此,在您的情况下,发出此请求的客户端的 IP 是 80.6.26.72。

    【讨论】:

    • 感谢您的提示,我认为 10.0~ 会是某种负载平衡器。但正如你所说,他们可能是报废者。我只是想知道为什么 fwd 中有 2 个 IP
    • 141.101.107.25 是 cloudflare
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-09
    • 2021-09-06
    • 2014-08-10
    • 1970-01-01
    • 2021-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多