nginx 移动端和pc端自动跳转适配

场景

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

现在的需求是这样,在pc端访问www.oowz.comm.oowz.com都跳转到www.oowz.com
而在移动端访问www.oowz.comm.oowz.com都跳转到m.oowz.com

参考,github上的这篇文章很详细,但是比较复杂,很多场景我们用不到,所以参考这个,我修改如下。

pc端:www.oowz.com

  server {
      listen       80;
      server_name  www.oowz.com;

      #charset koi8-r;
      #access_log  logs/host.access.log  main;
    # 下面根据user_agent可以获取
     if ($http_host !~ "^www.oowz.com$") {
      rewrite  ^(.*)    http://www.oowz.com$1 permanent;
     }
     if ($http_user_agent ~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry)) {
      rewrite  ^(.*)    http://m.oowz.com$1 permanent;
     }
    location / {
            root     /home/build/rampage-home-front/dist/html;
            index  index.html index.htm;
     }

}

作用部分代码如下:

 if ($http_host !~ "^www.oowz.com$") {
  rewrite  ^(.*)    http://www.oowz.com$1 permanent;
 }
 if ($http_user_agent ~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry)) {
  rewrite  ^(.*)    http://m.oowz.com$1 permanent;
 }

移动端:m.one.com

  server {
      listen       80;
      server_name  m.oowz.com;

      #charset koi8-r;
      #access_log  logs/host.access.log  main;
    #非移动端跳转到 www.oowz.com
     if ($http_user_agent !~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry)) {
      rewrite  ^(.*)    http://www.oowz.com$1 permanent;
     }

    location / {
        root     /home/build/rampage-mobile-front/dist;
        index  index.html index.htm;
      }
}

作用部分代码如下:

 if ($http_user_agent !~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry)) {
  rewrite  ^(.*)    http://www.oowz.com$1 permanent;
 }

至此完成了相关配置

未经允许不得转载:OZ分享-吉家大宝官方博客 » nginx 移动端和pc端自动跳转适配

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

置顶文章