在 <fastCGI> 应用程序配置中找不到 Azure flask <handler> scriptProcessor

Azure flask <handler> scriptProcessor could not be found in <fastCGI> application configuration

我正在尝试在 Azure Web 应用程序中部署 Python Flask 应用程序。我创建了网络应用程序(Flask)并发布了我的代码。发布后,我在网站上收到以下错误消息。

The page cannot be displayed because an internal server error has occurred.

检查日志时,我可以看到以下错误。

但这只发生在我的订阅中(通过 MSDN 获得免费订阅)。但在组织订阅中工作正常。

<fastCGI> 设置必须在 IIS 的 applicationHost.config 文件中(在 system.webServer 部分)。仅仅将它放入 web.config 是行不通的(通过在本地 IIS 上而不是在 Azure 中测试它来确认)。示例配置可能如下所示:

<fastCgi>
  <application
    fullPath="D:\home\Python27\python.exe"
    arguments="D:\home\Python27\wfastcgi.py"
    maxInstances="16"
    idleTimeout="21600"
    instanceMaxRequests="10000000"
    signalBeforeTerminateSeconds="60"
    xdt:Transform="InsertIfMissing"
    xdt:Locator="Match(fullPath)">
    <environmentVariables>
      <environmentVariable name="PYTHONHOME" value="D:\home\Python27" />
    </environmentVariables>
  </application>
</fastCgi>

您可能需要调整此配置。

这应该可以解决本地 IIS 的问题,您可以在其中编辑 applicationHost.config。我不确定 Azure,但也许您可以在这里找到一些提示:https://github.com/Azure/azure-python-siteextensions/issues/2.