Git Bash执行Django runserver命令卡在StatReloader无响应
问题修复方案
- 优先验证是否为重载器兼容性问题,执行带禁用重载参数的启动命令:
该参数会关闭Django默认的文件变化监听重载功能,仅启动单服务进程,Windows环境下90%以上的StatReloader卡住问题都可通过该方法解决。如果命令执行后服务正常启动,即可确定是默认重载器的环境兼容性问题。python manage.py runserver 0.0.0.0:8000 --noreload - 若需要保留自动重载功能,可替换默认重载器:在系统中安装Watchman工具,Django会自动识别并优先使用兼容性更好的WatchmanReloader替代默认的StatReloader,无需额外修改项目配置。
- 排查终端输出异常:Windows环境下的Git Bash存在Python进程标准输出缓冲不自动刷新的问题,可换用系统自带的PowerShell或CMD执行启动命令,也可以在启动服务后直接访问
127.0.0.1:8000验证服务是否已经正常启动。 - 排查第三方阻塞项:
- 临时将Django配置文件中的数据库改为默认的本地SQLite3,排除远程数据库连接超时导致的启动阻塞
- 将项目文件夹移出系统受保护目录(如
C:\Program Files、系统级别的管理员专属目录等),避免重载器扫描文件时权限不足导致卡住
- 排查版本兼容性:确认当前使用的Django版本与Python 3.9匹配,Django 3.2至4.2版本均对Python 3.9提供完整支持,版本不匹配建议做对应升降级处理。
内容的提问来源于stack exchange,提问作者Michael Rader
相关产品推荐
相关产品推荐

