ValueError: hostingstart.app не может быть импортирован

Пытаюсь создать веб-приложение на лазурном python для flask python, но получаю следующую ошибку

Error occurred while reading WSGI handler:

Traceback (most recent call last):   File "D:\Python34\Scripts\wfastcgi.py", line 711, in main
    env, handler = read_wsgi_handler(response.physical_path)   File "D:\Python34\Scripts\wfastcgi.py", line 568, in read_wsgi_handler
    return env, get_wsgi_handler(handler_name)   File "D:\Python34\Scripts\wfastcgi.py", line 551, in get_wsgi_handler
    raise ValueError('"%s" could not be imported' % handler_name) ValueError: "hostingstart.app" could not be imported

StdOut:

StdErr:

Я попытался обновить wfastcgi, после этого я изменил местоположение сценария на новый wfastcgi, он выбрасывал обработчики сценариев scriptProcessor не мог быть найден по ошибке

Структура папки:

WWWroot
 - hostingstart.py
 - view.py
 - web.config

hostingstart.py

from flask import Flask
app = Flask(__name__)

import view
wsgi_app = app.wsgi_app

Web.Config

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

person Sribal12    schedule 22.01.2019    source источник


Ответы (1)


Вы можете попробовать установить python extension version, следуя инструкциям ниже, вместо использования собственных версий веб-приложения Azure.

Шаг 1. Добавьте расширения (вот Python 3.6.1 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\Python361x64\python.exe|D:\home\Python361x64\wfastcgi.py" resourceType="Unspecified" requireAccess="Script"/>
    </handlers>
  </system.webServer>
</configuration>

В случае успешного развертывания в пути KUDU можно увидеть следующую структуру: D:\home\site\wwwroot>.

введите описание изображения здесь

Если вы хотите использовать дополнительный пакет Python, продолжайте.

Шаг 3. Переключитесь на Kudu CMD и команды cd Python361x64 и touch get-pip.py и скопируйте содержимое URL https://bootstrap.pypa.io/get-pip.py в get-pip.py с помощью кнопки «Изменить», затем запустите python get-pip.py, чтобы установить инструмент pip.

введите описание изображения здесь

Шаг 4. Установите все необходимые пакеты через python -m pip install pyodbc

введите описание изображения здесь

person Jay Gong    schedule 22.01.2019