在我们部署django应用的时候,通常的做法是用uwsgi或者gunicorn等wsgi server运行django工程,然后在前面放一个nginx做反向代理,但是如果我们nginx没有使用80端口的话,有可能访问应用的/跳转的时候会出现错误,丢失了端口,
跳转到另一个网站或者404,如何解决这个问题呢?很简单
1. django settings中添加如下配置
USE_X_FORWARDED_HOST = True
2. nginx中添加如下配置
proxy_set_header X-Forwarded-Host $host:$PORT;
其中$PORT表示你当前访问的端口,这样当你访问/或者其他需要跳转的链接的时候就
会带上端口信息了