python

Python Flask使用Nginx做代理时如何获取真实IP

使用Flask开发的项目,但部署到线上Docker容器中后,因为使用了Nginx做代理,所以Flask无法获取真实IP地址,获取到的都是192.0.0.1 ,解决方法如下: 首先是Nginx的配置,需要在转发的请求headers中设置好真实IP: location /path { root html; proxy_pass http://127.0.0.1:5000/; proxy_set_header X-Real-IP $remote_addr; } 然后在Flask中通过headers获取IP,为了兼容使用nginx不使用nginx的情况,做了一些处理: ip

  • zgljl2012
1 min read
python

Python Flask静态目录

在创建了Flask项目之后,如果不想用到模板引擎,想做前后端分离的项目时,就需要用到静态目录了。Flask的静态目录规定是static,也就是说所有的静态文件需要放到static文件夹下才能访问到。如下目录: - app.py - static - index.html 要访问index.html,需要通过Url:http://localhost:5000/static/index.html 也就是说要加上static路径进行访问。但这样又很不方便,因为要加static的话,访问html的url就显得有些“丑”了。这个时候,可以使用参数 static_

  • zgljl2012
1 min read
zgljl2012@gmail.com