Dan*_*Man 11 python django nginx
我有一个使用gunicorn,nginx和django建立的网络服务器.
我正在远程访问它,并使用此:
def testIP(request):
ip_address = utils.get_ip(request)
Run Code Online (Sandbox Code Playgroud)
我只是持续得到一个127.0.0.1的IP地址.就像我说我远程访问它,因此它不应该给一个本地地址.
我认为它可能与gunicorn有关,但我想首先查看这里,看看你们是否有任何见解.
Yuj*_*ita 26
get_ip()如何工作?
如果nginx是反向代理并且gunicorn是应用服务器,它总是从本地机器上的nginx获取请求.
nginx发送到应用服务器的真实IP在我的情况下HTTP_X_REAL_IP通过nginx conf线proxy_set_header X-Real-IP $remote_addr;
所以您可能想要设置它,并在您的django应用程序帐户中使用新的IP标头或set request.META['REMOTE_ADDR']=request.META['HTTP_X_REAL_IP']
| 归档时间: |
|
| 查看次数: |
5947 次 |
| 最近记录: |