Nginx配置——区分PC或手机访问不同域名

首先是新官网的Nginx配置文件加个跳转判断,通过user-agent判断来源是移动端还是PC端:

server {
    listen 80;
       server_name www.*com   *.com; // 新官网域名     
        rewrite .* https://$host$request_uri last; 
}
 
 server {
     listen       443 ssl;
     server_name www.*.com *.com;  // 新官网域名    
    root  /data/7d;
    charset utf-8;
    ssl_certificate /usr/local/nginx/_.7d.com.crt;
    ssl_certificate_key /usr/local/nginx/_.7d.com.key;

   rewrite /s1$ http://s1.7d.com/start last; 
   if ( $http_user_agent ~* "(Android|iPhone|Windows Phone|UC|Kindle)" ){ // 跳转判断      
                  rewrite  ^/(.*)$  https://m.7d.com$uri redirect; // redirect表示302跳转(暂时性转移)      }     
     ……
 }
  然后是旧官网的配置文件改成新域名,同样要做跳转判断,把不是移动端访问的请求跳转回新官网。

格式: error_log /dev/null crit;

  server {
     listen 80;
     server_name m.*.com; // 旧官网域名     
     rewrite .* https://$host$request_uri last;   }
 
     server {
      listen       443 ssl;
      server_name m.*.com;  // 旧官网域名   
      root  /data/7d;
      charset utf-8;
      ssl_certificate /usr/local/nginx/_.7d.com.crt;
     ssl_certificate_key /usr/local/nginx/_.7d.com.key;
 
      rewrite /s1$ http://s1.7d.com/start last; 
     if ( $http_user_agent !~* "(Android|iPhone|Windows Phone|UC|Kindle)" ){ 
                        // ~前加个!,如果不是移动端访问,则跳转回新官网。        
                         rewrite  ^/(.*)$  https://m.7d.com$uri redirect; 
                         // redirect表示302跳转   
          }     
     ……
  }

转载于:https://my.oschina.net/7795442/blog/1624512

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值