#nginx 反向代理本地cookie 无法携带上去

发布于 2022-09-04 23:37:47 字数 2415 浏览 22 评论 0

1.在coding page 部署了一个项目比如地址这样http://app.coding.me/film,接口在第三方服务器地址http://xxx.com/v4/api/..
2.现在在阿里的服务器上用nginx反向代理接口转发,解决了跨域,但发现在在http://app.coding.me/film域名发送请求本地cookie无法发送给第三方服务器。而且request headers无法携带cookie 上去 withCredentials:true
这是我的代理配置请问有毛病吗

listen 80;
server_name api.server.top;//#接口请求域名
location /api {
    add_header 'Access-Control-Allow-Origin' http://app.coding.me;
    add_header 'Access-Control-Allow-Credentials' 'true';
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
    proxy_cookie_domain xxx.com app.coding.me;#重新改写第三方返回cookie domain
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Nginx-Proxy true;
    proxy_set_header Connection "";
    proxy_set_header Referer xxx.com;
    proxy_set_header Host $proxy_host;
    proxy_pass  http://xxx.com/v4/api/;#目标接口地址
 }
#response
HTTP/1.1 200 OK
Server: nginx/1.10.1
Date: Thu, 25 May 2017 07:53:23 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 1761
Connection: keep-alive
X-Powered-By: MaizuoMobileWeb/4.27.10
Set-Cookie: cityId=10; Max-Age=2592000; Domain=.xxx.com; Path=/; Expires=Sat, 24 Jun 2017 07:55:19 GMT
Set-Cookie: cityName=%E6%B7%B1%E5%9C%B3; Max-Age=2592000; Domain=.xxx.com; Path=/; Expires=Sat, 24 Jun 2017 07:55:19 GMT
ETag: W/"JNVa2eLxZZXafos18vYaFA=="
Access-Control-Allow-Origin: http://app.coding.me
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET, POST, OPTIONS
#request
Host: api.server.top
Connection: keep-alive
Accept: application/json, text/plain, */*
Origin: http://app.coding.me
User-Agent: Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Mobile Safari/537.36
Referer: http://app.coding.me/film/
Accept-Encoding: gzip, deflate, sdch
Accept-Language: zh-CN,zh;q=0.8,en;q=0.6,und;q=0.4,zh-TW;q=0.2,ja;q=0.2
Cookie: cityId=10; cityName=%E6%B7%B1%E5%9C%B3;

浏览器中cookie cityId=13 cityName="%E5%B9%BF%E5%B7%9E" 都变了,request 和 response cookie 始终不变。

图中 cookie Domain N/A啥意思?
图片描述

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

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

发布评论

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

评论(4

瞎闹 2022-09-11 23:37:47

proxy_cookie_domain xxx.com app.coding.me;#重新改写第三方返回cookie domain 这个应该有问题

月亮坠入山谷 2022-09-11 23:37:47

就是有问题,
不行你可以把cookie 给前端 前端再通过js 设置cookie

粉红×色少女 2022-09-11 23:37:47
proxy_cookie_domain xxx.com api.server.top;
删除会话 2022-09-11 23:37:47

你看下服务器时间是否一致

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