当前位置: 首页 > 知识库问答 >
问题:

passport.js express google oauth 502 nginx上的坏网关

云洋
2023-03-14

当我在当地尝试时,事情似乎运转良好。当我将它部署到我的Ubuntu生产服务器时,在从Google到/login/Google/returnendpoint的重定向回调过程中,我得到了一个502 Bad gateway错误。

app.get('/login/google/return', 
  passport.authenticate('google', { failureRedirect: '/login' }),
  function(req, res) {
    res.redirect('/');
  });

如果我注释掉passport.authenticate('google',{..})行,那么错误就消失了。在检查nginx错误日志时,我看到了以下错误

upstream sent too big header while reading response header from upstream

下面是Nginx的服务器配置块:

location /auth/ {
   proxy_pass http://0.0.0.0:3000/;
}
proxy_buffers 8 16k;

我对如何调试/解决这个问题束手无策。任何人的建议都将不胜感激。以下是到目前为止我的项目的链接https://github.com/tnguyen14/auth/blob/master/index.js

共有1个答案

卫逸春
2023-03-14

所以我很接近。proxy_buffers 8 16K;不够。将以下两行添加到nginx中修正了它:

proxy_buffers 8 16k;
proxy_buffer_size 32k;

Update:原来,它抱怨头大小的原因是因为我没有序列化充分的用户配置文件,所以对象对于cookie来说太大了。由于我使用的是cookie-session,所有这些数据都被塞进cookie中,使得cookie太大。

减少将由passport会话序列化的内容可以解决这个问题,而无需添加nginx配置。

 类似资料:
  • 我的nginx.conf文件是这样的: 现在,在打开一些URL时,它抛出了502个坏网关,但对其他URL则没有。我犯的错误。日志为: 2019/01/10 23:53:39[错误]12139#12139:*5 recv()在从上游读取响应头时失败(104:由对等方重置连接),客户端:127.0。0.1,服务器:localhost,请求:“GET/wordpress/HTTP/2.0”,上游:fas

  • 我有joomla 3. x安装随着几个自定义组件和模块。我检查了错误日志,发现了下面给出的错误消息。 上游从上游读取响应标头时发送了无效标头,客户端:127.0。0.1,服务器:医院,请求:“GET/HTTP/1.1”,上游:fastcgi://127.0.0.1:9000" 如果有人能帮忙或提供解决问题的线索,我们将不胜感激。 谢谢你。

  • null service-configuration-file.yml ingress-configuration-file.yml(基于主机的路由) 我遵循了以下步骤: 输出结果是: 不幸的是,当我试图在浏览器上访问Dash应用程序时,我从Nginx得到了一个502坏网关错误。你能帮帮我吗?因为我的Kubernetes知识有限。提前谢了。

  • 502网关错误。错误日志和nginx配置如下。有什么问题吗? [错误]7660#0:*10 connect()在连接到上游时失败(111:连接被拒绝),客户端:40.83。126.181,服务器:127.0。0.1,请求:“GET/HTTP/1.1”,上游:fastcgi://127.0.0.1:9000,主持人:“www.mysite.com” nginx。形态: vhost/home.conf

  • 我在裸机上安装了一个库伯内特斯集群(使用威睿虚拟机),节点如下 Metallb安装为集群的负载平衡器,calico安装为CNI 我还安装了带舵柄的nginx入口控制器 我部署了一个简单的nginx服务器进行测试 我使用负载均衡器类型的部署从metallb获得IP,工作正常,但当我添加入口时,尽管分配了IP,但我得到错误502坏网关,如下所示: 防火墙已启用,但所需端口已打开 我的服务和pods工作

  • 这是我的设置细节 Nginx。形态 默认情况下,我的conf文件包含可用站点和已启用站点 当我按我的域运行html文件时,它工作正常。 但如果我转到php文件,例如 它给出了nginx的502坏网关错误 出现问题时,Php5 fpm正在运行