我使用nginx作为反向代理来服务器网站,每个请求都会由nginx传输到后门应用程序,一旦生成响应,就会由nginx回复给客户端。我想要做的是当 nginx 从后门应用程序获取响应时添加自定义 cookie。
假设我的域名是xxx.com,从用户的角度来看,当他访问我网站的任何页面时,他的浏览器都会得到一个如下所示的cookie用户名:
我的 nginx 配置是:
location / {
add_header Set-Cookie "username=$http_id; Domain=.xxx.com; Path=/" always;
}
Run Code Online (Sandbox Code Playgroud)
当访问我网站的每个页面时,nginx都会添加用户名和新路径(路径不是/,它是nginx中的$uri变量),然后我的网站下有很多重复的cookie用户名(它们只是在小路)。好像:
我将conf更改为:
location = / {
add_header Set-Cookie "username=$http_id; Domain=.xxx.com; Path=/" always;
}
Run Code Online (Sandbox Code Playgroud)
这次,没有重复的 cookie 项,但必须访问 xxx.com/。如果只访问某些页面而不访问 /,则不会设置 cookie。
什么conf可以让nginx在用户访问我网站的任何页面时只写入一次cookie?
归档时间: |
|
查看次数: |
7608 次 |
最近记录: |