同时运行两个Django项目出现服务器冲突无法访问新站点
问题原因及解决方案
无法切换两个Django项目的根源
这个问题不属于代码错误,是端口占用冲突导致的。Django 开发服务默认使用8000端口,同一时间单个端口只能被一个进程占用,先启动的旧项目服务会一直占用8000端口,所以后续即使启动新项目,访问http://127.0.0.1:8000 始终会显示旧项目的内容。
解决方法非常简单,启动服务时手动指定不同的端口即可,命令格式为:python manage.py runserver <端口号>
比如给两个项目分别指定8000和8001端口,启动后分别访问对应端口的地址,就能正常切换访问两个项目。
运行runserver时的提示说明
你看到的内容不是报错,是系统检查给出的警告和待办提示,和你无法切换项目的问题没有关联,单独处理即可:
- 警告
urls.W005:说明你的项目中admin的URL命名空间不唯一,检查根路由配置文件中是否重复引入了admin站点路由,调整为唯一命名空间即可,该警告不影响服务启动,仅可能导致admin相关URL反向解析异常。 - 未迁移提示:说明你项目中的flights应用存在未执行的数据库迁移,运行
python manage.py migrate执行迁移即可,否则flights应用相关的数据库操作可能无法正常运行。
内容的提问来源于stack exchange,提问作者Vicent LHK ROT
相关产品推荐
相关产品推荐

