带有uwsgi + Django应用的Nginx 502错误网关

问题描述 投票:0回答:1

我试图设置nginx以便通过uwsgi为django应用程序提供服务,但是我遇到了一个错误:每当我连接到端口80时,我都会得到nginx起始页。但是,当我尝试在端口8000上连接时,我得到了502错误的网关。我正在按照指南进行操作,因此只能执行此步骤:https://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html#if-that-doesn-t-work。我也尝试按照其他一些指南进行操作,但是我无法使其与任何其他指南一起使用,因此,也许我的配置存在问题。

我尝试使用以下命令运行uwsgi:uwsgi --socket mysite.sock --wsgi-file test.py --chmod-socket=666如指南所示,但仍然出现权限被拒绝的错误:

2020/02/23 20:26:43 [crit] 3745#3745:* 25 connect()unix:///home/bitnami/nate_site/nate_site.sock失败(13:权限拒绝),同时连接到上游,客户端:xxx.xxx.xxx.xxx,服务器:xxx.xxx.xxx.xxx,请求:“ GET / HTTP / 1.1”,上游:“ uwsgi:// unix:///home/bitnami/nate_site/nate_site.sock:”,主持人:“ xxx.xxx.xxx.xxx:8000”2020/02/23 20:26:44 [暴击] 3745#3745:* 25connect()到unix:///home/bitnami/nate_site/nate_site.sock失败(13:连接到上游客户端时,权限被拒绝):xxx.xxx.xxx.xxx,服务器:xxx.xxx.xxx.xxx,请求:“ GET / HTTP / 1.1”,上游:“ uwsgi:// unix:///home/bitnami/nate_site/nate_site.sock:”,主机:“ xxx.xxx.xxx.xxx:8000”

systemctl status nginx显示服务运行正常,所以我不确定为什么会出现此错误。

我要停止并启动这些进程(nginx,django等),主要是通过sudo netstat -ltnp | grep ':80'查找它们,并在需要在该端口上启动另一个进程时将它们pkill对其进行启动。我注意到uwsgi不在后台运行,这是造成问题的原因吗?

django nginx uwsgi
1个回答
0
投票

忘记了uwsgi和gunicorn。您可以使用正确的方式(高级方式)在nginx释放nginx单元之后,您最忘记了gunicorn,AWS弹性beantalk(EB)和在nginx上部署django的旧方法。

仅使用nginx单元来部署django应用程序,问题就已经解决了。

本教程可帮助您快速,安全地部署django,并且性能比gunicorn和uwsgi高得多

https://medium.com/tokyodevs/best-way-to-set-up-django-3-with-nginx-unit-and-mariadb-on-centos-7-301b7f0869c4

© www.soinside.com 2019 - 2024. All rights reserved.