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

Django部署后无法访问根URL但可访问/home路径该如何排查?

Django根路径访问超时排查方案

1. 修正ALLOWED_HOSTS配置

你当前的ALLOWED_HOSTS存在三类明显错误,是最可能导致根路径异常的原因:

  • 语法错误:'example'后缺少英文逗号,会触发配置解析异常
  • 无效值:ALLOWED_HOSTS仅接收域名/IP字符串,不能带https://协议头和后缀斜杠,'https://example.com/'属于无效配置
  • 缺失对应域名:你访问的是www.example.com,但配置中仅添加了根域名example.com,没有匹配带www前缀的域名

修正后参考配置:

ALLOWED_HOSTS = ['.example.com', '127.0.0.1']

其中.example.com可以同时匹配根域名example.com和所有子域名(包括www.example.com),适配性更强。

2. 优化URL配置

你当前myapp下的urls.py存在命名冲突问题,虽不会直接导致超时,但属于不规范写法,建议调整:

from .views import index
urlpatterns = [
    path('', index, name='root_index'),
    path('home/', index, name="home_index"),
]

你的根urls.py配置逻辑正确,已经将根路径映射到myapp的路由规则,不需要额外修改。

3. 排查反向代理配置

如果修正ALLOWED_HOSTS后问题仍然存在,需要检查前端Web服务器(Nginx/Apache等)配置:

  • 确认www.example.com的DNS解析已经生效,没有指向错误的服务器IP
  • 检查反向代理的路径匹配规则,确认根路径/的转发规则和/home/一致,没有漏写根路径的location配置
  • 检查是否配置了根路径的强制跳转规则,排除跳转死循环的可能
  • 查看Web服务器的错误日志,确认根路径的请求是否正常转发到Django的运行进程(uWSGI/Gunicorn等)

4. 排查服务运行日志

测试阶段可临时开启DEBUG模式,直接访问根路径查看报错信息;生产环境可查看Django运行日志,确认请求是否到达Django进程,排除视图层逻辑阻塞导致的超时问题。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 13:18:03