aws ec2 - 用bash命令运行python uwsgi继续返回 - 找不到python应用程序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了aws ec2 - 用bash命令运行python uwsgi继续返回 - 找不到python应用程序相关的知识,希望对你有一定的参考价值。
我正在尝试按照此链接中的教程运行我的烧瓶应用程序 - 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服务”部分,这将返回:
--- 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()
这是一个最小的工作示例:
我是个i.朋友:
from flask_app import app
flask_app.朋友:
来自flask进口烧瓶
app = Flask('my test app')
@app.route("/ping")
def ping():
return 'pong'
命令:uwsgi --socket 0.0.0.0:5000 --protocol=http -w wsgi:app
或没有wsgi.py
文件:
uwsgi --socket 0.0.0.0:5000 --protocol=http -w flask_app:app
需要注意的事项:
- wsgi :( -w参数)表示你有一个名为:
wsgi.py
的文件 - app(-w参数)是导入的烧瓶对象(Flask())
以上是关于aws ec2 - 用bash命令运行python uwsgi继续返回 - 找不到python应用程序的主要内容,如果未能解决你的问题,请参考以下文章
启动 AWS EC2 实例时如何使用 bash 脚本运行 postgres?