美文网首页
request.remote_addr是错误的,并且没有显示真正

request.remote_addr是错误的,并且没有显示真正

作者: 空口言_1d2e | 来源:发表于2019-12-12 18:37 被阅读0次

部署了一个Flask应用程序,我注意到request.remote_addr总是127.0.0.1
问题是在Flask前面可能有某种代理。在这种情况下,“真正的”IP地址通常可以在request.headers['X-Forwarded-For']中找到

 ip = request.headers.getlist("X-Forwarded-For")[0]

什么是remote_addr

remote_addr代表客户端的IP,但它的值不是由客户端提供的,而是服务端根据客户端的ip指定的,当你的浏览器访问某个网站时,假设中间没有任何代理,那么网站的web服务器(Nginx,Apache等)就会把remote_addr设为你的机器IP,如果你用了某个代理,那么你的浏览器会先访问这个代理,然后再由这个代理转发到网站,这样web服务器就会把remote_addr设为这台代理机器的IP。

什么是x_forwarded_for

正如上面所述,当你使用了代理时,web服务器就不知道你的真实IP了,为了避免这个情况,代理服务器通常会增加一个叫做x_forwarded_for的头信息,把连接它的客户端IP(即你的上网机器IP)加到这个头信息里,这样就能保证网站的web服务器能获取到真实IP


image.png

相关文章

  • request.remote_addr是错误的,并且没有显示真正

    部署了一个Flask应用程序,我注意到request.remote_addr总是127.0.0.1问题是在Flas...

  • Python 错误与异常

    错误和异常 语法错误 语法错误, 也被称为解析错误。比如: 语法分析器指出错误行, 并且在检测到错误的位置前面显示...

  • 真实的高贵

    悔恨自己的错误,并且力求不再重蹈覆辙,这才是真正的悔悟。优于别人,并不高贵,真正的高贵是优于过去的自己。 ...

  • ObjectMapper的坑

    2017.07.07 报错信息 一直显示的错误是没有匹配的conditionQuantity字段 Class源码 ...

  • Wrap Widget

    某些时候在显示行或者列时,由于宽度或者高度超过了屏幕,多余的部分无法显示,并且还会报出错误.使用Wrap来替代Ro...

  • 真正的错误,是害怕犯错误

    你害怕犯错误吗? 我很害怕。 因此,在少年时代,我每天按时完成老师布置的各种作业,有的时候甚至抄作业也要完成,我很...

  • mathtype错误“53”

    显示的是错误53,mathpage.wll 未找到。灰色显示 1.找 word加载项的位置 如果加载项存在没有问题...

  • 智者(五)——根本没有真正的错误

    ①“一分为二”和“合二为一”都很重要,生活工作都离不开。 一般人学会了“一分为二”,忘记了“合二为一”。修行人太重...

  • 前端访问express后台显示error500

    这种情况是后台有错误(后台有错误貌似不显示) 看下后台代码 原来send里面写的是 id 而上面没有声明 所以有错...

  • python|运行Scrapy时,显示unknown comma

    错误显示: 错误原因:没有写到根目录上解决方案:D:\2019\python\douban>scrapy craw...

网友评论

      本文标题:request.remote_addr是错误的,并且没有显示真正

      本文链接:https://www.haomeiwen.com/subject/yvwtnctx.html