从零开始学习Linux:Day06 Nginx之rewrite实现不一样域名跳转

一些面向WEB开发的应用,会对浏览器有必定要求,好比必须在IE下,或Chrome下浏览。那如何实现不一样终端访问不一样域名的跳转?好比,若是是IE浏览器访问,则提示此浏览器不兼容,建议更换chrome浏览器继续访问。
这里主要使用到nginx的一个rewrite规则。能够在Chrome下模拟不一样的浏览器来测试。
首先,使用chrome打开测试主机192.168.68.128上的nginx发布页面,F12调出开发模式,
从零开始学习Linux:Day06 Nginx之rewrite实现不一样域名跳转html

点击窗口右上角三个圆点,More tools-Network conditions
从零开始学习Linux:Day06 Nginx之rewrite实现不一样域名跳转nginx

能够看到User agent,主要使用user agent这项来设定rewrite规则匹配。
从零开始学习Linux:Day06 Nginx之rewrite实现不一样域名跳转chrome

掉去User agent 对应的Select automatically对应的勾。能够选择须要的浏览器,以下,查看到对应的IE9,IE11还不相同,分别对应的:MSIE和Trident,在nginx配置文件,利用MSIE和Trident作匹配
从零开始学习Linux:Day06 Nginx之rewrite实现不一样域名跳转浏览器

从零开始学习Linux:Day06 Nginx之rewrite实现不一样域名跳转

而后,在nginx配置文件里面,使用rewrite,利用MISE和Trident来作匹配。ide

if ( $http_user_agent ~* "MISI | Trident" )  {
       rewrite ^/(.*) /notify.html;
       }

从零开始学习Linux:Day06 Nginx之rewrite实现不一样域名跳转

最后,发布目录建立notify.html页,写入内容:此浏览器不兼容,建议更换chrome浏览器继续访问。学习

而后在chrome下能够模拟访问,IE时提示更换chrome,使用chrome访问时正常。测试

相关文章
相关标签/搜索