在NGINX中按域parsingCookie

我在客户端有两个同名的userId的cookie。 他们只有域名设置不同。 一个是tradernet.com,另一个是.tradernet.com

如果我使用$ cookie_userId,nginx会捕获第一个,并不总是相同的。 如何抓取nginx中的精确域的cookie?

你不能,因为域不是由客户端发送的Cookie头内容的一部分。 以下是关于如何构buildCookie头部值的RFC 6265的相关摘录:

用户代理必须使用与以下algorithm等效的algorithm来计算来自cookie存储和request-uri的“cookie-string”:

  1. 让cookie列表是来自满足以下所有要求的cookie存储区中的一组cookie:[…]

  2. 用户代理应该按以下顺序对cookie列表进行sorting:[…]

  3. 将cookie列表中每个cookie的最后访问时间更新为当前date和时间。

  4. 按照以下顺序处理cookie列表中的每个cookie,将cookie列表序列化为一个cookiestring:

    1. 输出cookie的名称,%x3D(“=”)字符和 cookie的值

    2. 如果cookie列表中存在未处理的cookie,请输出字符%x3B和%x20(“;”)。