【问题标题】:deploying python flask project on azure using visual Studio使用 Visual Studio 在 azure 上部署 python 烧瓶项目
【发布时间】:2018-07-24 20:45:50
【问题描述】:

我在将我的 Py 项目部署到 Azure 上时遇到了一些问题。 我得到的信息是 “由于发生内部服务器错误,无法显示页面。”

我知道这是项目中的配置错误。 我的 web.config 文件有以下内容。

Python 安装在我的天蓝色 Web 服务中的 D 中和我本地计算机的 C 中 运行 Py2.7

应用名称是白板

本地主机上的端口 5965...

我做错了什么?? MS 文档没有帮助

<configuration>
    <appSettings>
    <add key="WSGI_HANDLER" value="whiteboard.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\Python27\python.exe|D:\home\Python27\wfastcgi.py"
        resourceType="Unspecified" requireAccess="Script"/>
    </handlers>
    <httpPlatform processPath="C:\Python27\python.exe"
    arguments="F:\FYP-Whiteboard\Whiteboard\whiteboard\runserver.py %HTTP_PLATFORM_PORT%5"
    stdoutLogEnabled="true"
    stdoutLogFile="F:\FYP-Whiteboard\Whiteboard\whiteboard\LogFiles\python.log"
    startupTimeLimit="60"
    processesPerApplication="16">
    <environmentVariables>
        <environmentVariable name="SERVER_PORT" value="5965" />
        <environmentVariable name="PYTHONPATH" value="D:\home\site\wwwroot" />
        <environmentVariable name="PORT" value="%HTTP_PLATFORM_PORT%" />
    </environmentVariables>
    </httpPlatform>
    </system.webServer>
    </configuration>

【问题讨论】:

    标签: python azure deployment


    【解决方案1】:

    根据我的经验,您的问题是由于web.config中的包裹丢失或路由错误造成的。(或者您可以找到登录wfastcgi.log)我测试成功,请参考我的工作步骤:

    正如您在 Managing Python on Azure App Service 中找到的,Azure 应用服务为您提供了 site extension。您可以在KUDU console 上安装软件包。

    第 1 步:创建 azure web 应用并添加扩展(这里是 Python 3.6.4 x64)

    第 2 步:发布您的 flask 项目并添加 web.config

    web.config:

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <appSettings>
        <add key="WSGI_HANDLER" value="<Your Project 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\Python364x64\python.exe|D:\home\Python364x64\wfastcgi.py" resourceType="Unspecified" requireAccess="Script"/>
        </handlers>
      </system.webServer>
    </configuration>
    

    第三步:切换到 Kudu CMD 和命令cd Python361x64touch get-pip.py 并通过编辑按钮将url https://bootstrap.pypa.io/get-pip.py 的内容复制到get-pip.py 中,然后运行python get-pip.py 以安装pip 工具。

    第 4 步:通过python -m pip install Flask 安装您需要的任何软件包

    希望对您有所帮助。有任何问题,请告诉我。

    【讨论】:

    • 是的,我已经这样做了。azure 帐户上的目录结构有 python27 文件夹和扩展名。你能告诉我 httpplatform 组件应该包含什么吗?在参数和过程路径中? exe在web目录(D那里)或loca(我机器中的C盘)中的位置?
    猜你喜欢
    • 2021-05-31
    • 2016-03-19
    • 2016-01-28
    • 1970-01-01
    • 1970-01-01
    • 2020-10-19
    • 1970-01-01
    • 1970-01-01
    • 2019-04-24
    相关资源
    最近更新 更多