Hosting Python Flask na serwerze IIS z systemem Windows 10
Chcę hostować mój interfejs API Python Rest na serwerze IIS systemu Windows 10.
Najpierw próbowałem hostować przykładową aplikację, ale nie mogę.
my_app.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'Hello IIS from Flask framework.'
@app.route('/Hello')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run()
web.config
<configuration>
<system.webServer>
<handlers>
<add name="Python FastCGI"
path="*"
verb="*"
modules="FastCgiModule"
scriptProcessor="C:\Program Files\Python39\python.exe|C:\Program Files\Python39\lib\site-packages\wfastcgi.py"
resourceType="Unspecified"
requireAccess="Script" />
</handlers>
</system.webServer>
<appSettings>
<add key="WSGI_HANDLER" value="my_app.app" /> <!-- {name_of_file}.{name_of_flask_app}-->
<add key="PYTHONPATH" value="C:\inetpub\wwwroot\test" />
<add key="WSGI_LOG" value="C:\inetpub\wwwroot\test\app.log" />
</appSettings>
</configuration>
Wypróbowałem poniższe samouczki, ale to nie działa dla mnie.
https://medium.com/@rajesh.r6r/deploying-a-python-flask-rest-api-on-iis-d8d9ebf886e9
https://www.youtube.com/watch?v=ma1UvzqF82Q&ab_channel=ShobhitWalia
Błąd HTTP 500.0 - wewnętrzny błąd serwera: zobacz zrzut ekranu błędu
Potrzebuję pomocy ... Dzięki
Odpowiedzi
Jeśli potrzebujesz aplikacji Python hosta usług IIS, musisz zainstalować język Python, a następnie dodać mapowanie modułów w usługach IIS. Oto kroki:
Najpierw zainstaluj Pythona na swoim komputerze.
Włącz CGI:

Po pomyślnej instalacji zobaczysz „ISAPI i CGI Restrictions” oraz Handler Mappings:

- Wpisz „Ograniczenia ISAPI i CGI”, dodaj nowe Ograniczenia ISAPI lub CGI:

- Wprowadź „Mapowanie obsługi”, a następnie dodaj mapowanie modułu (należy dodać% S% S lub zostanie zgłoszony błąd):

Wreszcie możemy pomyślnie uzyskać dostęp do aplikacji w języku Python:

AKTUALIZACJA:
Czy widzisz Pythona w swoich mapowaniach obsługi?

To jest mój web.config:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
</configuration>
W pliku web.config nie ma nic. Wszystkie moje ustawienia dotyczą całego IIS:

Kliknij „Przeglądanie katalogu”:

Odblokuj to:
