這是我第一次將Azure部署到Web應用程序的體驗。 我跟着這個tutorial。Azure部署不安裝在requirements.txt中列出的Python軟件包
他們的默認演示應用程序對我來說工作正常。
之後,我通過git推送了我的Flask應用程序。日誌顯示部署成功。然而,當我瀏覽通過鏈接的託管應用程序的「應用程序屬性」提供的,我得到一個500錯誤如下:
該頁無法顯示,因爲內部服務器錯誤有 發生。
最有可能的原因:IIS收到請求;但是,在處理請求期間發生內部 錯誤。 此錯誤的根本原因取決於哪個模塊處理請求,以及發生此錯誤時工作進程中發生的 是什麼。 IIS不是 能夠訪問網站或應用程序的web.config文件。 如果NTFS權限設置不正確,可能會發生這種情況。 IIS是 無法處理網站或應用程序的配置。 經過身份驗證的用戶沒有使用此DLL的權限。 請求被映射到受管理的處理程序,但未安裝.NET可擴展性 功能。
唯一的關閉基地,我可以通過瀏覽通過KUDU wwwroot文件看到的事情是,沒有我已經安裝在我的本地虛擬環境在Azure上安裝儘管「requirements.txt」文件是否存在的軟件包在wwwroot。
我的理解是Azure會在GIT成功推送時安裝它在requirements.txt中找到的任何不存在的包。但它似乎並沒有發生在我身上。
我做錯了什麼,缺少的軟件包只是一個症狀,或者它可能是問題的原因?
注:
我的瓶應用本地工作(Linux)的罰款和對第三方VPS
我調到幾次從頭開始無濟於事(我使用本地GIT法)
我在本地克隆了Azure Flask演示應用程序,更改了應用程序文件夾並將其推回到Azure,但沒有成功。
Azure是設置到Python 2.7一樣的我的虛擬ENV本地
正如上面鏈接教程的建議,我刪除了「ENV」文件夾,並重新部署到Azure的把戲重新安裝虛擬ENV。它做了,但它有自己的默認包,而不是我的requirements.txt中的包。
我requirements.txt有以下幾點:
bcrypt == 3.1.0 CFFI == 1.7.0點擊== 6.6瓶== 0.11。1 Flask-Bcrypt == 0.7.1 Flask-Login == 0.3.2 Flask-SQLAlchemy == 2.1 Flask-WTF == 0.12 itsdangerous == 0.24 Jinja2 == 2.8 MarkupSafe == 0.23 pycparser == 2.14 PyMySQL = = 0.7.7蟒-HTTP-客戶== 1.2.3 6 == 1.10.0 smtpapi == 0.3.1 SQLAlchemy的== 1.0.14 WERKZEUG == 0.11.10 WTForms == 2.1
您的應用程序的根目錄中是否有'.skipPythonDeployment'文件?並且在部署任務期間是否收到任何錯誤消息?如果可能,你可以提供你的'requirements.txt'嗎? –
@ GaryLiu-MSFT>是的,根目錄中有一個.skippythondeployment文件。它只有一個「hello」字符串。部署任務中沒有錯誤消息。它以「已成功部署」消息結束。最後,我使用requirements.txt內容更新了問題。 – user3522242