February 23, 2009 at 23:59
· Filed under Uncategorized
Permalink
February 22, 2009 at 23:59
· Filed under Uncategorized
Permalink
February 21, 2009 at 23:59
· Filed under Uncategorized
Permalink
February 20, 2009 at 23:59
· Filed under Uncategorized
Permalink
February 20, 2009 at 15:55
· Filed under Uncategorized
昨天把Django的admin配好了,同时也写了一个Hello Onlinelist!的app放上去,一切看起来很美。
然后就想把onlinelist.jbobos.org加到Google的WebMaster里,结果发现Google说这个网站没有404,无法通过Verify。原来我写的urls.py,匹配了所有的URL到View的index函数,而这个index永远返回“Hello Onlinelist!”所以永远不会有找不到页面的情况。
修改前的urls.py
urlpatterns = patterns('',
(r'^admin/(.*)', admin.site.root),
(r'^(.*)$', include('djsite_onlinelist.onlinelist.urls')),
#这里拦截了所有的URL,往后传的字符串是空。
)
修改后的urls.py
urlpatterns = patterns('',
(r'^admin/(.*)', admin.site.root),
(r'', include('djsite_onlinelist.onlinelist.urls')),
#把所有的URL一个字不漏的传给onlinelist的urls。
)
onlinelist的urls.py
urlpatterns = patterns('djsite_onlinelist.onlinelist.views',
(r'^$', 'index'),
#空URL调用index,返回Hello Onlinelist!,状态码200
(r'^notfound', 'notfound'),
#notfound返回HttpResponseNotFound,状态码404
)
另外在templates下创建了404.html和500.html。上述urls中没有匹配到的URL都会显示404.html(状态码404),系统障害的时候会显示500.html(状态码500)。这样把昨天《继续在Dreamhost上配置Django》的遗留问题也解决了。
《参考资料》
Django官方文档:URL dispatcher,Writing Views。
Permalink