这是我第一次将Azure部署到Web应用程序的体验。 我跟着这个tutorial。Azure部署不安装在requirements.txt中列出的Python软件包
他们的默认演示应用程序对我来说工作正常。
之后,我通过git推送了我的Flask应用程序。日志显示部署成功。然而,当我浏览通过链接的托管应用程序的“应用程序属性”提供的,我得到一个500错误如下:
该页无法显示,因为内部服务器错误有 发生。
最有可能的原因:IIS收到请求;但是,在处理请求期间发生内部 错误。 此错误的根本原因取决于哪个模块处理请求,以及发生此错误时工作进程中发生的 是什么。 IIS不是 能够访问网站或应用程序的web.config文件。 如果NTFS权限设置不正确,可能会发生这种情况。 IIS是 无法处理网站或应用程序的配置。 经过身份验证的用户没有使用此DLL的权限。 请求被映射到受管理的处理程序,但未安装.NET可扩展性 功能。
唯一的关闭基地,我可以通过浏览通过KUDU wwwroot文件看到的事情是,没有我已经安装在我的本地虚拟环境在Azure上安装尽管“requirements.txt”文件是否存在的软件包在wwwroot。
我的理解是Azure会在GIT成功推送时安装它在requirements.txt中找到的任何不存在的包。但它似乎并没有发生在我身上。
我做错了什么,缺少的软件包只是一个症状,或者它可能是问题的原因?
注:
我的瓶应用本地工作(Linux)的罚款和对第三方VPS
我调到几次从头开始无济于事(我使用本地GIT法)
我在本地克隆了Azure Flask演示应用程序,更改了应用程序文件夹并将其推回到Azure,但没有成功。
Azure是设置到Python 2.7一样的我的虚拟ENV本地
正如上面链接教程的建议,我删除了“ENV”文件夹,并重新部署到Azure的把戏重新安装虚拟ENV。它做了,但它有自己的默认包,而不是我的requirements.txt中的包。
我requirements.txt有以下几点:
bcrypt == 3.1.0 CFFI == 1.7.0点击== 6.6瓶== 0.11。1 Flask-Bcrypt == 0.7.1 Flask-Login == 0.3.2 Flask-SQLAlchemy == 2.1 Flask-WTF == 0.12 itsdangerous == 0.24 Jinja2 == 2.8 MarkupSafe == 0.23 pycparser == 2.14 PyMySQL = = 0.7.7蟒-HTTP-客户== 1.2.3 6 == 1.10.0 smtpapi == 0.3.1 SQLAlchemy的== 1.0.14 WERKZEUG == 0.11.10 WTForms == 2.1
您的应用程序的根目录中是否有'.skipPythonDeployment'文件?并且在部署任务期间是否收到任何错误消息?如果可能,你可以提供你的'requirements.txt'吗? –
@ GaryLiu-MSFT>是的,根目录中有一个.skippythondeployment文件。它只有一个“hello”字符串。部署任务中没有错误消息。它以“已成功部署”消息结束。最后,我使用requirements.txt内容更新了问题。 – user3522242