Windows 10 IIS sunucusunda Python Flask Barındırma
Python Rest API'mi Windows 10 IIS sunucusunda Barındırmak İstiyorum.
İlk önce örnek bir uygulamayı barındırmaya çalıştım ama bunu yapamıyorum.
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>
Aşağıdaki eğitimleri denedim ama benim için çalışmıyor.
https://medium.com/@rajesh.r6r/deploying-a-python-flask-rest-api-on-iis-d8d9ebf886e9
https://www.youtube.com/watch?v=ma1UvzqF82Q&ab_channel=ShobhitWalia
HTTP Hatası 500.0 - Dahili Sunucu Hatası: Hata ekran görüntüsüne bakın
Yardıma ihtiyacım var .... teşekkürler
Yanıtlar
IIS ana python uygulaması istiyorsanız, python yüklemeniz ve ardından IIS'de modül eşlemesi eklemeniz gerekir. İşte adımlar:
Önce python'u bilgisayarınıza kurun.
CGI'yi etkinleştirin:
Başarılı bir kurulumdan sonra, "ISAPI ve CGI Kısıtlamaları" ve İşleyici Eşlemeleri göreceksiniz:
- "ISAPI ve CGI Kısıtlamaları" girin, yeni bir ISAPI veya CGI Kısıtlamaları ekleyin:
- "İşleyici Eşlemeleri" ni girin, ardından Modül Eşlemesi ekleyin (% S% S eklenmesi gerekiyor, aksi takdirde bir hata bildirilecek):
Son olarak python Uygulamasına başarıyla erişebiliriz:
GÜNCELLEME:
İşleyici Eşlemelerinizde python görebiliyor musunuz?
Bu benim web.config'im:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
</configuration>
Web.config dosyasında hiçbir şey yok. Tüm ayarlarım tüm IIS içindir:
"Dizine Göz Atma" yı tıklayın:
Onu etkinleştir: