flask应用使用uWSGI和Nginx 部署出现的奇怪问题

发布于 2022-08-31 20:33:02 字数 1767 浏览 18 评论 0

学习flask做了一个小博客,大体功能做完了想学习一下部署过程,正好有一台搬运工VPS,就在上面尝试部署,使用的是uWSGI和Nginx ,
项目构成如下:

clipboard.pngclipboard.png

使用了Blueprint,auth文件夹下是关于处理登陆操作修改密码邮箱等验证操作的,main是博客相关程序。
现在使用命令:
python mananage.py runserver --host 0.0.0.0

一切正常,但是在uWSGI和Nginx 环境下,有些功能正常,有些功能报错:
502 Bad Gateway。

ngnix配置如下:

clipboard.png

uwsgi配置:

[uwsgi]
plugins=python
vhost=true
socket=127.0.0.1:9001

查看Nginx 错误也没有发现什么问题

通过查看myuwsgi日志文件发现报如下错误:

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe7 in position 0: ordinal not in range(128)

clipboard.png

但是我在启动文件已经加入如下代码:

if __name__ == '__main__':
    import sys
    reload(sys)
    sys.setdefaultencoding("utf-8")
    manager.run()

另外其他有中文的py文件开头都已经加上#encoding: utf-8

ngnix日志的error.log文件内容如下:

2015/01/23 09:41:28 [error] 18361#0: *1 upstream prematurely closed connection while reading response header from upstream, client: 122.96.137.42, server: , request: "GET /auth/login HTTP/1.1", upstream: "uwsgi://127.0.0.1:9001", host: "104.224.169.47", referrer: "http://104.224.169.47/"

access.log如下图所示:

clipboard.png

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

暗地喜欢 2022-09-07 20:33:02

以前遇到这个错误,多数是nginx无法连接到uwsgi,原因可能是uwsgi没有起,或者程序有问题等,其实这些错误都可以在nginx和uwsgi的日志中看到,查看一下日志,贴出来看看

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文