非代理aws的简单wsgi中间件
wsgi-aws-unprox的Python项目详细描述
根据X-Forwarded-For头设置正确的REMOTE_ADDR, 同时只信任cloudfront的ip地址。
此模块被应用于WSGi中间件,以安全的方式为整个应用程序固定IP地址检索。 作为额外的好处,外部包不再需要编写抽象层来检索IP地址头。
django示例
在django中编辑wsgi.py文件以应用模块:
fromdjango.core.wsgiimportget_wsgi_applicationfromwsgi_aws_unproxyimportUnProxyapplication=get_wsgi_application()application=UnProxy(application)
现在所有包都可以读取request.META['REMOTE_ADDR']来获取正确的IP。 这包括联系方式、岗哨错误报告和限速工具。
安装
您可以使用pip安装最新版本:
pip install wsgi-aws-unproxy
并将其作为wsgi中间件应用:
fromwsgi_aws_unproxyimportUnProxyapplication=UnProxy(application)