我对在 nginx 后面部署 uSWGI python 应用程序作为反向代理还不太熟悉,但到目前为止我没有遇到任何麻烦。
我有一台小型 linode,我同时在其中部署所有 python webapps。截至昨天,我有两个 linodes 在端口 8080 和 8090 上运行,昨天我决定在服务器根目录上部署一个默认静态站点。它按预期工作。这个网站有一个基本的邮件表单,所以我重建了我的 IPTABLES 以允许邮件端口的传出流量。(这是我所做的唯一主要更改)我决定重新启动 linode 以使一切井然有序。
之后,我重新启动了两个 Web 应用程序,但不知何故其中一个(在本地开发环境中完美运行)却返回 401 错误。
我真的不知道它可能是什么,我也在 Heroku 中运行相同的应用程序,并且我没有遇到任何问题。
我已经想不出这会是什么了。
这是我的应用程序的服务器块配置
server {
# Running port
listen 80;
server_name bachmanager.com www.bachmanager.com;
#logs
access_log /var/www/BachApp/logs/access.log;
error_log /var/www/BachApp/logs/errors.log;
# Proxying connections to application servers
location / {
include uwsgi_params;
uwsgi_pass uwsgiBach;
proxy_redirect off;
proxy_set_header Host www.bachmanager.com;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
}
我已经查看过了,但是关于 401 的每个问题或帖子都谈到了如何正确使用它,似乎没有人错误地遇到这个错误......
我很确定这是一个非常基本的问题,但我似乎无法弄清楚。
答案1
正如 Michael 所说,这条消息是由 Flask 发送的,一旦我发现了这个问题,我会进一步调查并在这里发布更好的答案。