Web服务器redirect到端口80

我需要帮助解决这个问题。 我的Django应用程序使用mod_wsgi,apache和反向代理使用nginx。 nginx监听端口80,我们的应用程序在VPS里面。 MOD WSGI在127.0.0.1:8081。 nginx代理将请求传递给127.0.0.1:8081。

有一天,我们的pipe理员给我们IP 210.201.201.200:8050(这个IP是假的)。

我所面对的,在nginx中,它仍然听80端口,而不是8050,它可以用于第一次打开login页面(request.GET)并且可以浏览。 但是,当我点击提交,它总是redirect到210.201.201.200:80,所以总是发生错误404。 (210.201.201.200:80还有另外一个应用)

总之,我打开http://210.201.201.200:8050 ,点击提交,它redirect到http://210.201.201.200:80 ,错误404。

有人可以帮助我,解释什么错在这里? 我的pipe理员指责我的networking服务器,并说(django平台,nginx或其他任何lah)只能在80端口执行。

请给我反馈,我的问题有什么解决办法?

请帮帮我。 谢谢

为了这个工作在任何时候,你应该redirect到http://hostname:port/path ,不只是/path 。 使用django.contrib.auth时,可以覆盖LOGIN_REDIRECT_URL中的LOGIN_REDIRECT_URL

一般来说,您可以使用contrib.sites框架,并在需要的地方传递Site.objects.get_current().domain