首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在/test @login_required上托管Django项目会重定向到/accounts,而不是//accounts/accounts

在/test @login_required上托管Django项目会重定向到/accounts,而不是//accounts/accounts
EN

Stack Overflow用户
提问于 2011-04-04 02:01:15
回答 2查看 213关注 0票数 1

我正在将一个项目移动到新的主机上,并希望将其设置为位于mysite.com/test/ (这位于Apache服务器上的mod_wsgi下)。这似乎对应用程序本身没什么影响,但是当我使用@login_required强制执行身份验证时,Django会重定向到mysite.com/accounts/login,而不是我想要的mysite.com/test/accounts/login。我也有一个mysite.com/prod,我想在上面做同样的事情,所以我不想在设置中的任何地方硬编码……它应该找出它的URL的根在哪里,并采取相应的行动。

我如何设置它,以便Django自动重定向到Apache认为的应用程序的web根目录?

EN

回答 2

Stack Overflow用户

发布于 2011-04-04 08:42:29

您需要在Django设置文件中将LOGIN_URL和LOGOUT_URL设置为完整的URL路径。请参见:

http://docs.djangoproject.com/en/1.3/ref/settings/#login-url

Django不会自动将挂载点插入到那些必须完全限定的挂载点的开头。

票数 4
EN

Stack Overflow用户

发布于 2013-09-11 03:17:45

对于所有的项目URL,同样的问题可以以更通用的方式解决。您可以在Running a Django site on my local machine, am I redirecting my URLs properly?上查看基于环境的ROOT URL支持的替代解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5531407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档