我当前的项目网址文件将空网址重定向到某个应用文件夹
NEW_PROJECT / url.py
from django.conf.urls import url
from django.contrib import admin
from django.conf.urls import include
from django.views.generic import RedirectView
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^accounts/', include('django.contrib.auth.urls')),
url(r'^new_app/', include('new_app.urls')),
url(r'^$', RedirectView.as_view(url='/new_app/', permanent=True)),
]
我有另一个使用类似urlpattern的旧项目: old_project / urls.py
urlpatterns = [
url(r'^$', RedirectView.as_view(url='/old_app/', permanent=True)),
]
但是当我尝试打开新项目网站(www.new_project.com/)时,我收到404错误。该错误表示将urlpatterns与旧项目字符串(old_app /)
进行比较错误页面:
Using the URLconf defined in new_project.urls, Django tried these URL patterns, in this order:
1. ^admin/
2. ^accounts/
3. ^new_app/
4. ^$
The current path, old_app/, didn't match any of these.
我的所有项目都使用相同的重定向文件夹。我猜这与我使用permanet=True
的方式有关。为什么会发生这种情况?如何解决这个问题?
答案 0 :(得分:2)
尝试完全清除浏览器缓存,它应该可以正常工作。
答案 1 :(得分:0)
如果两个项目使用相同的依赖项并且位于相同的目录结构中,则需要将old_project
网址导入new_project/url.py
文件,并将旧网址添加到urlpatterns
列表中。< / p>
如果它们具有不同的依赖关系,那么一切都在您的部署配置中。 Web服务器应配置为运行一个或另一个项目,具体取决于客户端要求的URL。如何根据您的基础设施,Web服务器等进行更改,因此您需要更加具体。