Django应用部署至Azure成功但显示默认页面 不加载自建应用如何解决
Django部署Azure仅显示默认页面解决方案
当前wwwroot目录下仅包含Azure默认部署生成的Django基础文件,未同步你本地开发的自定义应用代码,因此访问时只会展示默认初始页。
解决步骤
1. 优先调整自动部署配置(无需手动传文件)
在Azure应用服务的「配置」-「应用设置」中新增以下参数:
- 新增键
SCM_DO_BUILD_DURING_DEPLOYMENT,值设为1,开启部署时自动构建 - 若你的Django项目存放在本地仓库的子目录中,额外新增键
PROJECT,值设为你存放manage.py的子目录路径,比如my_django_project
配置完成后重新触发部署,Azure会自动把你的项目代码同步到wwwroot目录,同时安装依赖。
2. 手动上传项目代码方案
如果自动部署不生效,可以手动上传代码到wwwroot目录,可选两种方式:
- Kudu控制台上传:进入应用服务左侧菜单的「高级工具」,点击「转到」打开Kudu面板,选择「Debug console」-「CMD」,进入
site/wwwroot路径,直接把本地包含manage.py的整个项目文件夹里的所有内容拖到控制台的文件目录区域即可自动上传。 - FTP上传:在应用服务的「部署中心」-「FTP」页面获取FTP连接地址、用户名和密码,用FTP工具连接后将本地项目所有文件上传到
/site/wwwroot路径下。
3. 上传完成后的必要配置检查
- 确认项目
settings.py中ALLOWED_HOSTS配置已添加你的Azure应用域名,示例:ALLOWED_HOSTS = ['xxx.azurewebsites.net', '127.0.0.1', 'localhost'] - 在Azure应用服务「配置」-「常规设置」的「启动命令」栏填写正确的WSGI启动命令,示例(替换为你自己的项目名):
gunicorn --bind=0.0.0.0 --timeout 600 your_project_name.wsgi - 确认项目根
urls.py已添加你自定义应用的路由规则,比如path('', include('your_app_name.urls'))
配置完成后重启应用服务即可正常访问自定义开发的内容。
内容的提问来源于stack exchange,提问作者EmilyCat111
相关产品推荐
相关产品推荐

