我正在尝试在Azure Web应用程序上托管我的python api。这是一个基于Flaks的应用程序,并具有一个演示烧瓶代码。我创建了资源组并设置了所有内容。但是访问URL时显示

python - 如何在Azure上运行基于python3.7的Flask Web API-LMLPHP

尽管从部署选项中可以看到,但它已经成功部署了我的bitbucket项目。我在应用程序设置中选择了python3.4版本。我尝试添加最新的python扩展,但是仅3.6version可用。我添加了python3.6扩展名,但它仍仅在应用程序设置中显示python3.4。

我不知道如何解决此问题。请帮忙。谢谢。

最佳答案

S安德鲁。

web.config文件对于Web应用程序的部署至关重要。您可以在KUDU网址上创建web.config文件。

您可以通过以下两种方式导航到KUDU:

1.找到门户上的按钮。

python - 如何在Azure上运行基于python3.7的Flask Web API-LMLPHP

2.直接访问网址:https://.scm.azurewebsites.net/

在KUDU上,您可以在以下路径中看到您的应用程序结构:D:\home\site\wwwroot,您需要在此处创建web.config文件。

python - 如何在Azure上运行基于python3.7的Flask Web API-LMLPHP

另外,您可能会在路径:D:\home\中看到python扩展名,如果要使用扩展名环境,则需要在web.config中配置正确的路径。

python - 如何在Azure上运行基于python3.7的Flask Web API-LMLPHP

请参阅我的示例web.config文件。与web.config相关,您可以参考此official doc

<configuration>
  <appSettings>
    <add key="WSGI_HANDLER" value="<your app name>.app"/>
    <add key="PYTHONPATH" value="D:\home\site\wwwroot"/>
    <add key="WSGI_LOG" value="D:\home\LogFiles\wfastcgi.log"/>
  </appSettings>
  <system.webServer>
    <handlers>
      <add name="PythonHandler" path="*" verb="*" modules="FastCgiModule" scriptProcessor="D:\home\Python361x64\python.exe|D:\home\Python361x64\wfastcgi.py" resourceType="Unspecified" requireAccess="Script"/>
    </handlers>
  </system.webServer>
</configuration>


有关Azure上python应用程序部署的更多详细信息,请参阅我以前的案例,您将找到答案。

1. Failed to Deploy Flask to Azure

2. deploying python flask project on azure using visual Studio

希望对您有帮助。

关于python - 如何在Azure上运行基于python3.7的Flask Web API,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51916266/

10-10 13:03