首页 > 解决方案 > Django:在应用程序中更改根 URL

问题描述

我的服务器上有一个工作应用程序/系统(Python 3.9、Django 3.1)。现在我需要将它移动到另一个具有别名的服务器。

从这个www.myserver.com到这个www.otherserver.com/myapp

在 Apache2 配置中,我有行WSGIScriptAlias /myapp /path/to/myapp/wsgi.py. 但是现在我对应用程序中的所有链接都有问题,例如从索引页面到目录页面的链接重定向到www.otherserver.com/catalog但我需要www.otherserver.com/myapp/catalog.

什么是最好的解决方案?

标签: pythondjangourlhyperlinknavigation

解决方案


一种快速的方法是在新路径中包含项目 url 模式。

制作一个新的模式列表,例如base_patterns

base_patterns = [
    path('admin/', admin.site.urls),
    path('app/', include('app.urls),
]

在主 urls.py 的底部包含base_patterns新路径。

urlpatterns = [
    path('catalog/', include(base_patterns)),
]

推荐阅读