![](/img/trans.png)
[英]Azure Web Service and "Add Identity Provider": Create new app registration is disabled
[英]Django app with Azure AD account identity provider deployment to Azure Web app service fails
我正在尝试按照Microsoft 教程将 Django web 应用程序部署为 Azure AD 作为帐户身份提供者到 Azure Web 应用程序服务。
我的应用程序已在 Azure AD 门户网站上注册。 它在localhost
上的开发中运行良好。
但是,当我将它部署到 Azure Web 应用程序服务时,它失败了,因为它请求以http开头的重定向 URI,而 Azure AD 要求任何非本地主机服务器必须具有以https开头的重定向 URI。 具体来说,它请求重定向 URI 为http://myapp.com/auth/redirect
。 但是,我只能在 Azure AD 中注册 URI https://myapp.com/auth/redirect
。
此问题已在相关的Stackoverflow 问题中得到解决
给出的解决方案是“使用./manage.py runserver_plus --cert /tmp/cert localhost:8000
运行服务器”。
这在localhost
上运行良好,但我无法将其部署到 Azure web 应用程序服务。
我存储在.github/workflows/deploy_on_<myapp>.yml
中的部署文件的部署作业定义如下:
deploy:
runs-on: ubuntu-latest
needs: build
environment:
name: 'Production'
url: ${{ steps.deploy-to-webapp.outputs.webapp-url }}
steps:
- name: Download artifact from build job
uses: actions/download-artifact@v2
with:
name: python-app
path: .
- name: 'Deploy to Azure Web App'
uses: azure/webapps-deploy@v2
id: deploy-to-webapp
with:
app-name: 'fno-calculator'
slot-name: 'Production'
publish-profile: ${{ secrets.AZUREAPPSERVICE_PUBLISHPROFILE_<secret> }}
我应该如何使用自定义命令部署我的 Django web 应用程序./manage.py runserver_plus --cert /tmp/cert localhost:8000
到 Azure web 应用程序服务?
还有另一种方法可以使用 Azure AD 部署我的 Django web 应用程序,该应用程序请求使用https而不是http的重定向 URI 吗?
修改部署文件运行:
- name: 'Deploy to Azure Web App'
run: ./manage.py runserver_plus --cert /tmp/cert <servername>:<port_id>
预期部署成功并且应用程序处于活动状态。
部署失败,出现错误Cannot assign requested address
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.