nginx设置电脑手机访问相同网址页面不同

Posted 阳光与叶子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx设置电脑手机访问相同网址页面不同相关的知识,希望对你有一定的参考价值。

先来个预览效果:

原理:根据用户请求,在nginx中会判断用户请求终端是什么设备,默认不做处理,这里我们添加if语句判断,符合规则后端指向指定路径

打开nginx配置文件

}
    server {
        listen       80;
        server_name  www.test.com;
        charset utf-8;
        access_log  /var/log/nginx/www_test_com.access.log;
        location / {
        root     /home/prod/;
    if ($http_user_agent ~* \'(android|webOS|iPhone|iPod|BlackBerry)\') {
            root /home/prod/mobile/;
        }
  
        }
        location /nginxstatus {
            stub_status on;
            access_log on;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }

 

通过$http_user_agent来判断终端设备类型,

root /home/prod/mobile/                 #符合规则后端跳转路径



设置完成后我们修改本地hosts文件,把我们自定义的域名设置上,然后我们浏览器访问,我使用的是谷歌浏览器,谷歌浏览器有一个模拟手机用户的功能,鼠标右键,检查,左上角有一个手机标志,点击下页面就变成手机终端

 

以上是关于nginx设置电脑手机访问相同网址页面不同的主要内容,如果未能解决你的问题,请参考以下文章

如何让www网址自动识别电脑、平板、手机,然后进行相应跳转?

同一个网址,电脑手机访问显示不同的内容(Apache配置)

如何通过nginx区分客户端访问来自电脑还是手机,怎么返回不同的页面(思路)?

使用JS判断访问设备是电脑还是手机

使用JS判断访问设备是电脑还是手机

怎样判断手机端和电脑端自动跳转到各自的页面