我有两个域 www.domain.com 和 www.domain.com.tw。我希望用户被重定向到最近的服务器,但如果他们想查看其他服务器,他们可以通过单击站点中的链接。
我试图用 cookie 来做,但它似乎不起作用。我认为问题在于 cookie 是为引用 URL 而不是重定向 URL 设置的,因此 nginx 甚至看不到 cookie。我怎样才能做到这一点?这是我到目前为止的尝试。
server {
listen 80;
server_name www.domain.com.tw;
set $redir "";
if ($http_accept_language ~* "en") {
set $redir "1";
}
if ($http_cookie ~* "noredir") {
set $redir "";
}
if ($redir = "1") {
rewrite ^ https://www.domain.com/;
}
}
Run Code Online (Sandbox Code Playgroud)
正如您自己所说,由于 cookie 与域相关,因此 .com.tw 不会看到 .com 上设置的 cookie。因此,在重定向中,您可以添加一个参数,例如?noredir=true. 然后,当 .com 收到该请求时,它无法重定向并设置 cookie 以使其记住。
| 归档时间: |
|
| 查看次数: |
5970 次 |
| 最近记录: |