Node.js nginx反向代理cookie转发

Node.js nginx反向代理cookie转发,node.js,reactjs,docker,nginx,heroku,Node.js,Reactjs,Docker,Nginx,Heroku,我有3个heroku应用程序 前端反应 后端节点 反向代理nginx 对反向代理/api/?(*)的调用被转发到后端 rest所有对反向代理的调用都转发到前端 /etc/nginx/conf.d/default.conf代码 upstream frontend { server $FRONTEND_URL; } upstream backend { server $BACKEND_URL; } server { listen $PORT; locatio

我有3个heroku应用程序

  • 前端反应
  • 后端节点
  • 反向代理nginx

  • 对反向代理/api/?(*)的调用被转发到后端
  • rest所有对反向代理的调用都转发到前端

  • /etc/nginx/conf.d/default.conf
    代码

    upstream frontend {
        server $FRONTEND_URL;
    }
    
    upstream backend {
        server $BACKEND_URL;
    }
    
    server {
        listen $PORT;
    
        location / {
            proxy_pass http://frontend;
            proxy_set_header Host $FRONTEND_URL;
        }
    
        location /api {
            rewrite /api/(.*) /$1 break;
            proxy_pass http://backend;
            proxy_set_header Host $BACKEND_URL;
        }
    
    }
    

    问题

    我正在使用cookie进行身份验证,但后端设置的cookie未被“转发”


    现在它可以工作了,我做了一些更改

  • 在my中更改为
    secure:false
    为我完成了(稍后可能会添加tls证书)
  • @mariolu建议的修复方法
  • 现在看来

    location /api {
        rewrite /api/(.*) /$1 break;
        proxy_pass http://backend;
        proxy_set_header Host $BACKEND_URL;
        proxy_set_header Cookie $http_cookie;
    }
    
  • app.set(“信任代理”,true)
  • 你需要添加

    proxy_set_header Cookie $http_cookie;
    
    在位置配置中。
    变量$http\u cookie是用户请求cookie。

    对不起,我有点新。。。在本地配置中?我的开发模式有效(使用docker compose up)@keemahs我再次编辑。地点:conifg。