You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django Page Not Found问题求助:配置无误却持续报错

Django Page Not Found 问题解决

严格按照官方文档操作,但访问http://127.0.0.1:8000/mainpage/始终出现页面未找到错误,尝试修改路径、切换Debug=True/False都没用,该功能之前正常运行,现在持续报错。

相关代码

mainpage 应用的 urls.py

from django.urls import path

from . import views

urlpatterns = [
    path("mainpage/", views.index, name="index"),
]

mainpage 应用的 views.py

from django.shortcuts import render

from django.http import HttpResponse

def index(request):
    return HttpResponse("My first page")

项目根目录的 urls.py

from django.contrib import admin
from django.urls import path
from django.contrib import admin
from django.urls import include, path
urlpatterns = [

    path("mainpage/", include("mainpage.urls")),
    path('admin/', admin.site.urls),
]

错误提示

使用 mysite.urls 中定义的 URLconf,Django 按以下顺序尝试了这些 URL 模式:
mainpage/ mainpage/ [name='mainpage']
admin/
当前路径 mainpage/ 与其中任何一个都不匹配。
你看到此错误是因为你的 Django 设置文件中 DEBUG = True。将其更改为 False,Django 将显示标准的 404 页面。

问题原因

路由路径嵌套冲突了。根 urls.py 里已经配置了path("mainpage/", include("mainpage.urls")),所有以mainpage/开头的请求会转发到 mainpage 应用的 urls.py 处理。但 mainpage 的 urls.py 里又定义了path("mainpage/", views.index, name="index"),这会导致实际需要匹配的路径是mainpage/mainpage/,而你访问的是mainpage/,所以找不到对应的视图。

解决方法

修改 mainpage 应用的 urls.py,把路径改成空字符串,让它处理根路由转发过来的mainpage/路径:

from django.urls import path

from . import views

urlpatterns = [
    path("", views.index, name="index"),
]

修改后重启开发服务器,再访问http://127.0.0.1:8000/mainpage/就能正常显示视图返回的内容了。

内容的提问来源于stack exchange,提问作者Ashley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 04:42:43