有时候一个项目分别做了pc端和h5端 需要在pc端打开h5的链接时(反之也是一样 )自动跳转到相应的链接
我们尝试过在前端项目中进行判断 但是会有一瞬间是先打开原链接的内容再进行对应的跳转 用户体验不好 这里在nginx配置中做了判断
server {
listen 7000;
server_name default_server;
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
#判断是否是pc端 示例链接https://www.pc.com
if ($http_user_agent !~* "(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox
|netfront|operam(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino") {
rewrite ^/register(.*) https://www.pc.com last;
rewrite ^/(.*) https://www.pc.com redirect;
}
#判断是否是h5端 示例链接https://www.h5.com
if ($http_user_agent ~* "(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|
netfront|operam(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino") {
rewrite ^/register(.*) https://www.h5.com last;
rewrite ^/(.*) https://www.h5.com redirect;
}
location / {
root /opt/tengine/html;
index index.html index.htm;
}
}