经常会遇到这种需求,根据访问终端的不同,来选择跳转不同的内容。一般区分小屏幕移动端和电脑端而区分访问内容。这有两种办法,一种是根据终端跳转域名,还有一种是根据终端访问的文件不同。下边就说下 nginx 对于这两种办法的配置
跳转域名
比如 www.domain.com
是 PC 端网址 而 m.domain.com
是移动端网址
server {
listen 80;
server_name www.domain.com domain.com;
root /data/domain;
charset utf-8;
if ( $http_user_agent ~* "(Android|iPhone|Windows Phone|UC|Kindle)" ){ # 跳转判断
rewrite ^/(.*)$ http://m.domain.com$uri redirect; # redirect表示302跳转(暂时性转移)
}
index index.html index.htm;
#...
}
跳转不同的文件
server {
listen 80;
server_name www.domain.com domain.com;
root /data/domain; #默认PC端访问内容
charset utf-8;
if ( $http_user_agent ~* "(Android|iPhone|Windows Phone|UC|Kindle)" ){ # 跳转判断
root /data/mobile_domain; #移动端访问内容
}
index index.html index.htm;
#...
}
评论 (0)