关注本站,零基础新手也能轻松搭建个人网站!
  1. 首页
  2. Nginx实战教程

Nginx系列教程(10)解决nginx反向代理cookie导致session丢失问题

阿里云服务器优惠

重大福利提醒:【双11活动】整个11月份阿里云服务器降价了,1核2G1年58元 3年180元。这个价格买到就是赚到。180元就可以让你建站3年,全网找不到这么低的价格了。
活动地址阿里云双11降价活动(1核2G1M3年180元) 只有阿里云新用户才能参与活动。
必读事项购买阿里云服务器必读事项(省钱有绝招)
如果你不是阿里云新用户,可以找家人,亲戚的账号重新注册为阿里云新用户。一次性买满3年,我和我朋友们都是这么干的,主要是省钱。大家看了我的教程的应该都知道,多台云服务器之间的网站备份,数据迁移很容易,不用担心数据备份和迁移问题。
问题咨询:大家遇到各种问题可以微信咨询,微信号:xzjmyk 先加微信,然后拉你入交流群。

为什么cookie 会丢失?

比如说一个没有经过代理的地址 : http://127.0.0.1/project cookie_path:/project
如果按照第二种方式代理 那么地址就是 : http://127.0.0.1/proxy_path cookie_path: /proxy_path
如果cookie_path与地址栏上的path不相符游览器就不会接受这个cookie,自然session就失效了

proxy_cookie_path 的用法

proxy_cookie_path 的作用是用来改变cookie的路径

语法: proxy_cookie_path path replacement;

path就是你要替换的路径 replacement 就是要替换的值

详情可以去nginx 官网看看 传送门

下面是可能的三种情况
1. host、端口转换,cookie不会丢失

    location /project {
        proxy_pass   http://127.0.0.1:8080/project;
    }

2.路径也变化,则需要设置cookie的路径转换

    location /proxy_path {
        proxy_pass   http://127.0.0.1:8080/project;
        proxy_cookie_path  /project /proxy_path;
    }

3.直接代理本地端口

location /proxy_path {
        proxy_pass   http://127.0.0.1:8080/;
        proxy_cookie_path  /project /proxy_path; # project 为你的项目名 也可用变量代替
    }

原创文章,作者:admin,如若转载,请注明出处:http://tencent.yundashi168.com/265.html

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code

2020年阿里云618大促活动(有香港主机)

1核/2G/1M---91元1年,三年275元;
2核/4G/1M---320元1年,三年960元;
2核/8G/1M---416元1年,三年1093元;
4核/8G/1M---465元1年,三年1396元;
1核2G(香港,不用备案)---249元1年,三年888元;点击直达
还有还有4核8G6M、8核16G10M配置,价格很低很低!

注意:这个价,只有新用户才能看到;老用户借用家人身份重新注册,这个价格重新注册也不亏!

我知道了