Windows 10 IIS-URL-Fehler - Python Flask Rest API
Nov 20 2020
Dies ist meine Beispiel-Python-Rest-API-Anwendung. Ich habe diese Anwendung unter Windows 10 IIS gehostet.
hallo.py.
from flask import Flask
app=Flask(__name__)
@app.route('/',methods=['GET'])
def index():
return "Hello World 0.0!"
@app.route('/1',methods=['GET'])
def index1():
return "Hello 1.0!"
@app.route('/2',methods=['GET'])
def index2():
return "Hello 2.0!"
if __name__=='__main__':
app.run(debug=True)
web.config
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="FlaskFastCGI" path="*" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files\Python39\python.exe|"C:\Program Files\Python39\lib\site-packages\wfastcgi.py"" resourceType="Either" requireAccess="Script" />
</handlers>
<security>
<requestFiltering allowDoubleEscaping="true"></requestFiltering>
</security>
</system.webServer>
<appSettings>
<!-- Required settings -->
<add key="WSGI_HANDLER" value="hello.app" />
<add key="PYTHONPATH" value="~/" />
<!-- Optional settings -->
<add key="WSGI_LOG" value="C:\website\oboeqa_web.log" />
<add key="WSGI_RESTART_FILE_REGEX" value=".*((\.py)|(\.config))$" />
</appSettings>
</configuration>
http: // localhost: 8080
Hello World 0.0!
http: // localhost: 8080/1
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
http: // localhost: 8080/2
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
http: // localhost: 8080/3
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
Die erste Route funktioniert nur und die verbleibende Route funktioniert nicht.
Antworten
2 DingPeng Nov 20 2020 at 09:35
Sie müssen den Ressourcentyp ändern:
<handlers>
<add name="FlaskFastCGI" path="*" verb="*" modules="FastCgiModule" scriptProcessor="C:\Python27\python.exe|C:\Python27\lib\site-packages\wfastcgi.pyc" resourceType="Unspecified" requireAccess="Script" />
</handlers>
Sie müssen den Wert von resourceType in "Nicht angegeben" ändern.