2016-06-08 107 views
1

我使用nginx网络服务器,并试图重定向旧的IE版本。我使用MSIE标签重定向旧版IE浏览器(6,7,8,9,10)。代码是:使用nginx配置重定向IE 7和IE 11 nginx配置

if ($http_user_agent ~* '(MSIE 10.0|MSIE 9.0|MSIE 8.0|MSIE 7.0|MSIE 6.0)') { 
    return 301 https://$host/some-url; 
    } 

但是,这也重定向IE 11浏览器。如果我删除MSIE 7.0,那么它不会重定向IE 11.因此,它们之间存在一些冲突。

我需要实现的是重定向所有旧版本的IE浏览器,如果(6,7,8,9和10),只允许IE 11

+0

https://blogs.msdn.microsoft.com/ieinternals/2013/09/21/internet-explorer-11s-many-user-agent-strings/ https://msdn.microsoft.com/en-us/ library/hh869301%28v = vs.85%29.aspx –

+0

是的,我已经浏览了这些链接。但这在这个问题上并没有帮助。 – FELDAP

+0

找出为什么IE11回退到兼容模式并发送IE7​​ UA。另外,确保重定向没有被缓存(并且301肯定会被缓存)。 –

回答

0

可以在$http_user_agent解析'rv:11'检测MSIE 11

+1

请用反引号包装您的代码位 – YakovL