Django构建鹦鹉机器人Web服务器时遭遇404页面未找到问题求助
解决Django根路径404未找到的问题
很明显,你遇到的问题是访问服务器根路径http://54.95.30.145/时,Django找不到对应的URL匹配规则——你的inform.urls里只定义了^keyboard/和^message这两个路径,完全没处理空路径(也就是/)的请求。
下面给你两个针对性的解决思路,你可以根据实际需求选择:
思路一:给根路径添加视图处理
如果希望用户访问根路径时能得到有效响应(比如欢迎页、API说明),可以在inform/urls.py里添加根路径的匹配规则:
首先修改inform/urls.py:
from django.conf.urls import url from . import views urlpatterns = [ # 新增根路径匹配,r'^$'表示匹配空路径 url(r'^$', views.home, name='home'), # 保留你原有的两个URL模式 url(r'^keyboard/', views.keyboard, name='keyboard'), url(r'^message/', views.message, name='message'), ]
然后在inform/views.py里实现对应的home视图函数:
from django.http import HttpResponse def home(request): # 这里可以返回你想要的内容,比如纯文本或HTML return HttpResponse("欢迎来到鹦鹉机器人Web服务器!如需使用API,请访问 /keyboard/ 或 /message/")
调整后再访问根路径,就能得到你定义的响应,不会再出现404了。
思路二:直接访问已定义的API路径
如果你其实不需要根路径的响应,只是误访问了它,那直接访问你已经配置好的API路径即可:
http://54.95.30.145/keyboard/http://54.95.30.145/message/
只要这两个路径对应的视图函数已经正确实现,访问它们应该就能得到正常响应。
补充说明:从错误信息来看,Apache和Django的WSGI配置是正常的(Django已经接收到请求并尝试匹配URL模式),所以问题完全集中在URLconf的定义上,按照上面的方法调整就能解决。
内容的提问来源于stack exchange,提问作者super_beginner
相关产品推荐
相关产品推荐

