nginx配置移动端和PC端自动跳转

2019-02-21  本文已影响0人  猪猪学上树

场景

客户端 域名 描述
pc端 www.test.com 用于pc端访问官网
移动端 m.test.com 用于移动端访问

现在的需求是这样,在pc端访问www.test.comm.test.com都跳转到www.test.com

而在移动端访问www.test.comm.test.com都跳转到m.test.com

pc端conf

server{
    listen 443;
    ssl on;
    #listen [::]:80;
    server_name www.test.com test.com;
    index index.html index.htm index.php default.html default.htm default.php;
    # 真正用到的只有行
    if ($http_user_agent ~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry){
        rewrite  ^(.*)    https://m.test.com$1 permanent;
    }
}

移动端conf

server{
    listen 443;
    ssl on;
    #listen [::]:80;
    server_name m.test.com;
    #  真正起作用的这行
    if ($http_user_agent !~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry)) {
        rewrite  ^(.*)    https://www.test.com$1 permanent;
    }

    index index.html index.htm index.php default.html default.htm default.php;
}

需要注意的是 ,如果想让pc 跳转到移动 或者移动跳转到 pc 是302 临时重定向,可以修改 permanent 为 redirect

上一篇下一篇

猜你喜欢

热点阅读