Как правило, проблема была вызвана тем, что файл web.config
был настроен неправильно, чтобы не запускать приложение фляги из IIS.
Вот мой пример развертывания приложения фляги Hello World
на веб-сайте Azure, к которому можно обратиться, чтобы проверить правильность развертывания.
- Я установил расширение Python
python364x86
в D:\home
. Может быть, ваш установлен python364x64
.
- Я повелел
pip install flask
по пути D:\home\python364x86
через консоль Kudo.
- Моя файловая структура в
wwwroot
, как показано на рисунке ниже с помощью команды tree /F /A
.
Содержимое файла __init__.py
похоже на официальную демонстрацию Flask Hello
.
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run()
Содержимое моего web.config
файла указано ниже, обратите внимание python364x86
Я использовал здесь свойство scriptProcessor
тега system.webServer > handles > add
.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="PYTHONPATH" value="D:\home\site\wwwroot" />
<add key="WSGI_HANDLER" value="myflask.app" />
</appSettings>
<system.webServer>
<handlers>
<add name="PythonHandler" path="*" verb="*" modules="FastCgiModule" scriptProcessor="D:\home\python364x86\python.exe|D:\home\python364x86\wfastcgi.py" resourceType="Unspecified" requireAccess="Script"/>
</handlers>
</system.webServer>
</configuration>
Тогда демо-приложение работает.
Если ваше дело отличается от моего, пожалуйста, опубликуйте содержимое файла web.config
и другую необходимую информацию, чтобы решить вашу проблему.