Azure Flask应用程序中<fastCGI>配置中未找到<handler> scriptProcessor。

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

由于发生内部服务器错误,无法显示页面。

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

enter image description here

但这只发生在我的订阅中(通过MSDN获得的免费订阅)。但在组织订阅中运行良好。

好的,这个错误肯定与订阅无关,网页应用程序设置中有些不同。 - 4c74356b41
我不会改变任何东西,除了在发布配置文件中更改我的订阅。 - kabilan Mohanasundaram
很可能是你创建Web应用程序的方式有问题,订阅不能干扰Web应用程序,至少我可以想象一种方法。 - 4c74356b41
我正在调试类似的问题。目前解决它的方法(对我而言)是在应用程序设置中设置环境变量以及处理程序映射。我不明白为什么wfastcgi.py会忽略web.config文件。 - voldmar
1个回答

3
<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>

你可能需要调整这个配置。

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


1
我在这里提供一个关于如何进行此配置的教程:https://github.com/bitcubico/python-tutorial/blob/master/IIS-CONFIG.md - bitcubico

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接