在Flask+Gunicorn+Nginx网站的访问日志记录中,发现gunicorn的日志记录中ip地址为本机127.0.0.1。原因是因为nginx代理了80端口请求,然后转发给gunicorn,所以所有的日志记录来源IP为本机。
解决方法:
(1)在ngin配置文件中添加
proxy_set_header X-Real-IP $remote_addr;
(2)在gunicorn配置文件中添加
%(h)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s" "%({X-Real-IP}i)s"
重启即可!