簡體   English   中英

托管Flask(Python)應用會引發CGI錯誤

[英]Hosting Flask(Python) app throws CGI error

我按照azure網站執行了所有步驟。 我可以看到在Azure上運行的python 3.6版本。 我已經安裝了python 3.6擴展名並添加了正確的web.config文件。 當我嘗試打開我的URL時,出現以下錯誤

http://myuniqueappname114.azurewebsites.net/

在此處輸入圖片說明

任何想法如何解決此錯誤請

通常,此問題是由於您的web.config文件配置不正確而導致無法從IIS啟動flask應用程序引起的。

這是我在Azure網站上部署flask Hello World應用程序的案例,您可以參考該案例來檢查您的部署是否正確。

  1. 我在D:\\home下安裝了Python擴展python364x86 也許您安裝的是python364x64
  2. 我通過Kudo控制台在路徑D:\\home\\python364x86 pip install flask命令pip install flask
  3. 我的文件結構在wwwroot下,通過命令tree /F /A如下圖所示。 在此處輸入圖片說明
  4. __init__.py文件的內容類似於Flask官方Hello演示。

     from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello World!" if __name__ == "__main__": app.run() 
  5. 我的web.config文件內容如下,請注意python364x86我在標簽system.webServer > handles > add的屬性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文件內容和其他必要信息,以幫助解決您的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM