概述django admin在保存时redirect到错误的端口
我有一个使用Nginx + apache设置的django项目。 外部访问的http端口是20111,然后转发到端口80的服务器(具有内部IP)。因此,Nginx侦听端口80(并将相关请求传递给端口5000上的apache)。
现在初始login可以通过http:// externalip:20111从外部访问 ,但是当我完成一个pipe理 *** 作,比如保存一个条目,我被redirect到http:// externalip / path / to / model – 没有端口20111.结果是超时。 我怎么能告诉Django的所有pipe理redirect使用特定的主机名/端口(即http:// externalip:20111 )?
为什么套接字连接()到它自己的临时端口?
我如何在linux中获得一个程序的版本
Apache的httpd与Tomcat 7:端口80与端口8080
如何找出哪个进程使用localhost:80?
windows将数据包转发到C#应用程序
在代理或负载均衡器后面部署应用程序时,通常依赖X-Forwarded-Host标头。 Django 支持它
首先,你必须设置Nginx来发送正确的头文件。 添加到你的Nginx主机配置(在你的location部分):
proxy_set_header X-Forwarded-Host $host:20111;
其次,添加到您的settings.py:
USE_X_FORWARDED_HOST = True
它将允许django从请求中信任X-Forwarded-Host头。
它应该使它为你工作。 出于安全原因,您不应该相信在X-Forwarded-Host发送的每个值,因此请将您的可信域/ IP添加到settings.py ALLOWED_HOSTS
总结
以上是内存溢出为你收集整理的django admin在保存时redirect到错误的端口全部内容,希望文章能够帮你解决django admin在保存时redirect到错误的端口所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
请登录后查看评论内容