Ошибка внутреннего сервера веб-приложения Azure Python

РЕДАКТИРОВАТЬ: проблема, похоже, заключается в импорте пакетов в мое приложение. Все пакеты установлены правильно, и я вижу их в моем wwwroot с помощью kudu. Но когда я импортирую их в скрипты, я получаю ошибку 500. САМЫЙ НАДЕЖНЫЙ момент в том, что проблема возникает только тогда, когда я импортирую пакеты таким образом:

from package import something

Но не так:

import package

Я также получаю ту же ошибку, когда пытаюсь вызвать функцию пакета, что означает, что я не могу получить доступ к чему-либо из пакетов (?)

Кажется, что в веб-приложении возникло исключение, но не на моем локальном компьютере. Есть предположения?


Я пытаюсь опубликовать веб-приложение Python в веб-приложениях Azure, но мне все равно не удается. Я использую бутылку в качестве веб-фреймворка, а пакеты, которые я установил, вместе с их зависимостями:

  • Numpy
  • Scipy
  • Scikit-изображение

Я настроил виртуальный env в соответствии с веб-приложением (32 бит / 2.7), и я установил пакеты, используя колеса, как указано в этом сообщении: https://azure.microsoft.com/en-us/documentation/article/web-sites-python-create-deploy-bottle-app/

Я развертываю приложение через VS и мастер публикации из Azure SDK, и все работает, как ожидалось.

Когда приложение запущено, я получаю ошибку 500, а консоль сообщает следующее: введите описание изображения здесь

Мой web.cofing таков:

    <?xml version="1.0"?>
<!-- Generated web.config for Microsoft Azure. Remove this comment to prevent
     modifications being overwritten when publishing the project.
-->
<configuration>
  <system.diagnostics>
    <trace>
      <listeners>
        <add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31b....." name="AzureDiagnostics">
          <filter type="" />
        </add>
      </listeners>
    </trace>
  </system.diagnostics>
  <appSettings>
    <add key="WSGI_ALT_VIRTUALENV_HANDLER" value="app.wsgi_app()" />
    <add key="WSGI_ALT_VIRTUALENV_ACTIVATE_THIS" value="D:\home\site\wwwroot\env\Scripts\activate_this.py" />
    <add key="WSGI_HANDLER" value="ptvs_virtualenv_proxy.get_virtualenv_handler()" />
    <add key="PYTHONPATH" value="D:\home\site\wwwroot" />
  </appSettings>
  <system.web>
    <compilation debug="true" targetFramework="4.0" />
  </system.web>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true" />
    <handlers>
      <add name="Python FastCGI" path="handler.fcgi" verb="*" modules="FastCgiModule" scriptProcessor="D:\Python27\python.exe|D:\Python27\Scripts\wfastcgi.py" resourceType="Unspecified" requireAccess="Script" />
    </handlers>
    <rewrite>
      <rules>
        <rule name="Static Files" stopProcessing="true">
          <conditions>
            <add input="true" pattern="false" />
          </conditions>
        </rule>
        <rule name="Configure Python" stopProcessing="true">
          <match url="(.*)" ignoreCase="false" />
          <conditions>
            <add input="{REQUEST_URI}" pattern="^/static/.*" ignoreCase="true" negate="true" />
          </conditions>
          <action type="Rewrite" url="handler.fcgi/{R:1}" appendQueryString="true" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

Любая помощь, почему это может происходить?


person achigeor    schedule 26.03.2016    source источник
comment
Работает ли это приложение для вас на локальном компьютере? Если да, то мы должны включить ведение журнала и проверить журналы через консоль kudu вашего веб-приложения.   -  person Brij Raj Singh - MSFT    schedule 26.03.2016
comment
@ BrijRajSingh-MSFT Спасибо за ваш ответ. Да, это приложение работает должным образом на моем локальном компьютере. Что мы должны проверить с помощью куду?   -  person achigeor    schedule 26.03.2016


Ответы (1)


НАКОНЕЦ, у меня все заработало. Проблема заключалась в версии pip, которую я использовал для установки колес. После того, как я обновился до pip 8.11.1, все заработало, как ожидалось.

person achigeor    schedule 27.03.2016