使用nginx将旧IE用户重定向到不同的URL

Jam*_*son 4 internet-explorer nginx

我可以通过在我的服务器块中使用以下代码段为旧IE用户提供过时的浏览器页面:

location / {
        if ($http_user_agent ~ "MSIE 8.0") {
                rewrite ^ /ie.html break;
        }
}
Run Code Online (Sandbox Code Playgroud)

这很好用,nginx服务ie.html于IE 8用户.不过,我有两个问题.

一个是我想重新定向旧的IE用户,/upgradebrowser而不是仅仅为他们提供HTML页面.有没有办法可以发送Location:标题或其他东西?

第二,有什么方法可以让我轻松捕获IE的所有老用户?目前这只是在做IE 8.0,有没有办法使用$http_user_agent < "MSIE 8.0"

小智 6

您必须使用正则表达式来匹配所有情况.例如.

location / {
    if ($http_user_agent ~* '(MSIE 8.0|MSIE 7.0)') {
        return 301 https://$host$request_uri; 
    }
}
Run Code Online (Sandbox Code Playgroud)