Django - 为开发 Web 服务器显示 404 页面 (http://127.0.0.1:8000/)
Posted
技术标签:
【中文标题】Django - 为开发 Web 服务器显示 404 页面 (http://127.0.0.1:8000/)【英文标题】:Django - 404 page displayed for dev web server (http://127.0.0.1:8000/) 【发布时间】:2011-04-22 21:25:24 【问题描述】:我正在熟悉 Django。
我已成功安装并测试了一个演示站点。我现在想打开管理模块,看看会发生什么。
我采取的步骤(当然,有些是不必要的,但我只是想确保我从头开始):
-
编辑了 mysite/settings.py 以启用管理员
编辑了 mysite/url.py 以启用管理员
删除并重新创建了我的后端数据库
运行 ./manage.py syncdb(并正确响应提示)
启动了开发网络服务器 (./manange.py runserver)
这是我的 mysite/settings.py 文件的样子(仅限相关部分)
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
# Uncomment the next line to enable the admin:
'django.contrib.admin',
# The next lines are my models
'mysite.foo',
'mysite.foobar',
)
这是我的 mysite/urls.py 文件的样子:
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
# Example:
# (r'^mysite/', include('mysite.foo.urls')),
# Uncomment the admin/doc line below and add 'django.contrib.admindocs'
# to INSTALLED_APPS to enable admin documentation:
(r'^admin/doc/', include('django.contrib.admindocs.urls')),
# Uncomment the next line to enable the admin:
(r'^admin/', include(admin.site.urls)),
)
当我浏览到服务器 url 时,我得到这个响应:
Page not found (404)
Request Method: GET
Request URL: http://127.0.0.1:8000/
Using the URLconf defined in mysite.urls, Django tried these URL patterns, in this order:
1. ^admin/doc/
2. ^admin/
The current URL, , didn't match any of these.
You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page.
我做错了什么?
【问题讨论】:
【参考方案1】:-
使用 PyCharm 2.7
位置:urls.py
此行(在 urls.py 中) url(r'^admin/', include(admin.site.urls)) 未注释。添加了 # 和瞧,页面有效。
【讨论】:
【参考方案2】:Request URL: @987654321@
您正在访问 root URL。但是,您没有与此匹配的 URL 配置。您的管理应用程序位于 http://127.0.0.1:8000/admin/
。试试吧。
如果您希望管理员应用可以在根目录下访问,您必须更改您的 URL 映射,如下所示:
urlpatterns = patterns('',
# Uncomment the next line to enable the admin:
(r'^$', include(admin.site.urls)),
)
请记住,不建议这样做。您当然不希望根 URL 指向管理应用程序!
【讨论】:
【参考方案3】:显然,您没有任何处理“http://127.0.0.1:8000/”请求的 url。
要查看管理页面访问,'http://127.0.0.1:8000/admin/'
当您拥有管理员网址时
# (r'^admin/doc/', include('django.contrib.admindocs.urls')),
# Uncomment the next line to enable the admin:
# (r'^admin/', include(admin.site.urls)),
已评论且没有其他 url,django 欢迎页面默认显示在 'http://127.0.0.1:8000/'
【讨论】:
以上是关于Django - 为开发 Web 服务器显示 404 页面 (http://127.0.0.1:8000/)的主要内容,如果未能解决你的问题,请参考以下文章
Django 项目中的 HTML 音频标签播放按钮显示为灰色