我已按照 azure 网站执行所有步骤。我可以看到Python 3.6版本在Azure上运行。我已经安装了 python 3.6 扩展并添加了正确的 web.config 文件。当我尝试打开我的 URL 时,出现以下错误
http://myuniqueappname114.azurewebsites.net/
知道如何修复此错误
最佳答案
通常,该问题是由于您的 web.config
文件配置错误导致无法从 IIS 启动 Flask 应用程序引起的。
这是我在Azure网站上部署flask Hello World
应用程序的案例,您可以引用该案例检查您的部署是否正确。
- 我在
D:\home
下安装了 Python 扩展python364x86
。也许您安装的是python364x64
。 - 我通过 Kudo 控制台在路径
D:\home\python364x86
中命令pip installflask
。 - 通过命令
tree/F/A
,我在wwwroot
下的文件结构如下图所示。 __init__.py
文件内容类似于 Flask 官方Hello
演示。from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello World!" if __name__ == "__main__": app.run()
我的
web.config
文件内容如下,注意我在标签的属性
。scriptProcessor
中使用了python364x86
system.webServer > 处理 > 在此处添加<?xml version="1.0" encoding="utf-8"?> <configuration> <appSettings> <add key="PYTHONPATH" value="D:\home\site\wwwroot" /> <add key="WSGI_HANDLER" value="myflask.app" /> </appSettings> <system.webServer> <handlers> <add name="PythonHandler" path="*" verb="*" modules="FastCgiModule" scriptProcessor="D:\home\python364x86\python.exe|D:\home\python364x86\wfastcgi.py" resourceType="Unspecified" requireAccess="Script"/> </handlers> </system.webServer> </configuration>
如果您的情况与我的情况不同,请发布您的 web.config
文件内容和其他必要信息,以帮助解决您的问题。
关于python - 托管 Flask(Python) 应用程序抛出 CGI 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54121080/