我試圖使用AWS EB(Amazon Web Services Elastic Beanstalk)部署我的Flask Web應用程序。不幸的是,我遇到了以下錯誤:另一個Flask/AWS WSGIPath錯誤,具體爲:WSGIPath是指不存在的文件
Your WSGIPath refers to a file that does not exist.
我看了答案here和here;接下來的第一個建議沒有改變任何東西(仍然收到相同的錯誤)。作爲參考,此修復涉及創建一個.ebextensions/ethanWebsite-env.config
文件,其中ethanWebsite-env
是我的環境的名稱。
option_settings:
"aws:elasticbeanstalk:container:python":
WSGIPath: application.py
第二連桿建議使用EB CLI命令eb config
修改WSGIPath
環境變量。我已經使用AWS Web GUI(適用於我的環境的「配置」選項卡的「軟件配置」窗格)完成此操作;它已被設置爲application.py
,但我重置它無濟於事。我從嘗試eb config
得到的錯誤可能更具啓發性。
sh: -c: line 0: unexpected EOF while looking for matching `''
sh: -c: line 1: syntax error: unexpected end of file
同樣,如果我指定與eb config ethanWebsite-env
配置環境,我收到了同樣的錯誤。
這裏是我的應用程序的結構。
ethan_website/
application.py
connect4.py
isPrime.py
requirements.txt
.ebextensions/
ethanWebsite-env.config
.elasticbeanstalk/
config.yml
static/
(various .css and .js files)
templates/
(various .html files)
我在主項目級別省略flask/
文件夾中,有很多的子文件夾中,這似乎配置Python環境似乎並沒有相關性。
如果有人對任何問題有任何瞭解,請告訴我。我的錯誤與eb配置向我表明,有一個配置文件的問題,但我不知道從哪裏開始/超越我已經添加。謝謝!
我能夠這樣做,以解決這個問題在新環境中全新部署我的應用程序,嚴格按照[此處]概述的EB CLI(http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create-deploy-python-flask.html) 。儘管如此,仍然希望我能夠了解一下爲什麼我以前的方法會打破。當我使用'eb config'時,我仍然會得到相同的錯誤。 –