【发布时间】:2018-09-20 23:28:29
【问题描述】:
我正在尝试按照此链接中编写的教程运行我的烧瓶应用程序 - https://www.digitalocean.com/community/tutorials/how-to-serve-flask-applications-with-uwsgi-and-nginx-on-ubuntu-14-04#configure-uwsgi
使用亚马逊服务器的 ec2 来运行这个...
Amazon Linux AMI 2017.09.1 (HVM),所有选项的免费套餐。
我的文件结构如下:
/home/ec2-user/login_test/login_test/app.py
/wsgi.py
/venv/
所以我给出了一个uwsgi --socket 0.0.0.0:8000 --protocol=http -w wsgi 命令,如教程“测试uWSGI Serving”部分所述,返回:
--- no python application found, check your startup logs for errors ---
[pid: 24218|app: -1|req: -1/1] 127.0.0.1 () {24 vars in 257 bytes} [Wed Apr 11 07:01:38 2018] GET / => generated 21 bytes in 0 msecs (HTTP/1.1 500) 2 headers in 83 bytes (0 switches on core 0)
浏览器返回Internal Server Error
所以...我应该尝试检查什么?如果我在没有 uwsgi 的情况下(只需 python app.py 命令)并通过家用计算机上的 cmd(Windows 10)激活此应用程序,则该应用程序工作正常
编辑:我的 wsgi.py 内容:
from app import app as application
if __name__ == "__main__":
application.run()
【问题讨论】:
-
我尝试看到类似的问题,但它们是关于设置 ini 文件等....不是真的使用 bash 命令所以....:/
-
我认为在您的 wsgi 模块中您还需要导入应用程序(app=Flask() from your app.py)并执行:-w wsgi:app
-
哦,是的,我忘了提......刚刚添加了我的 wsgi.py 文件内容。
-
如果 name == "main": application.run() wsgi 不会执行这个。试试 -w wsgi:application
-
所以
uwsgi --socket 0.0.0.0:5000 --protocol=http -w wsgi:application?嗯....还是一样的:(
标签: python amazon-web-services nginx flask