产品服务AMH 免费服务器主机面板SSL证书 免费SSL证书申请 担保单 免费安全、零费率交易平台编程助手免费智能写代码、翻译AMYSQL 免费MySQL管理工具

AMH 社区首页

 AMH社区 - 开放自由有价值的社区

[求助帖] Nginx根据User-Agent做移动适配的301重定向的代码该怎么写?

crc5201314
铁牌会员
49.08 价值分

crc5201314 发表于 2017-09-26 02:42:30
根据百度官方人员的说法,PC站跟手机站做移动适配不建议用js跳转,而建议通过识别设备的User-Agent做301重定向,搜索引擎的蜘蛛是能正确识别的。这样的好处是不用加载JS就可以跳转。

我之前也发了一个帖子:http://amh.sh/bbs/post-9794-1-2.htm
但是那个帖子中的根据UA适配的规则只适合apache,不适合nginx。

好吧,本人比较菜,不知道怎么把apache移动适配规则改成nginx的规则 - -||
求大神帮忙改成适合nginx的吧,以下是代码,非常感谢,我想会帮到很多人。


RewriteEngine on

RewriteCond %{HTTP_HOST} ^qicheng0797.com [NC]
RewriteRule ^(.*)index\.html$ http://qicheng0797.com/$1 [R=301,L]

RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^$ http://www.qicheng0797.com/ [R=301,L]

RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^([a-zA-Z]+)/([a-zA-Z]+)/$ http://www.qicheng0797.com/$1/$2/ [R=301,L]
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)/$ http://www.qicheng0797.com/$1/$2/$3/ [R=301,L]
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)/$ http://www.qicheng0797.com/$1/$2/$3/$4/ [R=301,L]


RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^([a-zA-Z]+)/([a-zA-Z]+)/([0-9]+).html$ http://www.qicheng0797.com/$1/$2/$3.html [R=301,L]
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)/([0-9]+).html$ http://www.qicheng0797.com/$1/$2/$3/$4.html [R=301,L]
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)/([0-9]+).html$ http://www.qicheng0797.com/$1/$2/$3/$4/$5.html [R=301,L]


RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)_([0-9]+).html$ http://www.qicheng0797.com/$1/$2/$3_$4.html [R=301,L]
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)_([0-9]+).html$ http://www.qicheng0797.com/$1/$2/$3/$4_$5.html [R=301,L]
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]
RewriteRule ^([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)/([a-zA-Z]+)_([0-9]+).html$ http://www.qicheng0797.com/$1/$2/$3/$4/$5_$6.html [R=301,L]
2017-09-26 02:42:30 1

crc5201314
铁牌会员
49.08 价值分

说明一下
电脑站:qicheng0797.com
手机站:www.qicheng0797.com
这个是Apache的移动适配301重定向规则,已经生效了

还有另一个网站用的是nginx,以上规则就不适用了,测试无效,求大神帮忙
电脑站:www.wftyc.com
手机站:m.wftyc.com
  支持 (0分)  反对 (0分)
回复  2017-09-26 02:45:56 2

9513645
银牌会员
1428.02 价值分

你又来了,你这个问题无从下手,去提交工单问老大吧,
  支持 (0分)  反对 (0分)
回复  2017-09-26 12:10:47 3

crc5201314
铁牌会员
49.08 价值分

引用:
9513645 发表于 2017-09-26 12:10:47
你又来了,你这个问题无从下手,去提交工单问老大吧,

这是另一个问题了,上次的自己解决了
  支持 (0分)  反对 (0分)
回复  2017-09-26 15:13:01 4

amysql
创始人
16530.81 价值分

nginx是不能用apache规则的。尝试在线转换看,
https://amh.sh/search.htm?keyword=%E5%9C%A8%E7%BA%BFhtaccess&e=1
  支持 (0分)  反对 (0分)
回复  2017-09-29 12:13:21 5

AMH面板 - 好用高效低占用、安全可靠极稳定

crc5201314
铁牌会员
49.08 价值分

引用:
amysql 发表于 2017-09-29 12:13:21
nginx是不能用apache规则的。尝试在线转换看,
https://amh.sh/search.htm?keyword=%E5%9C%A8%E7%BA%BFhtaccess&e=1

找了不少在线转换都提示不支持某些规则
其实就是下面这个规则无法转换

RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos|UCBrowser|QQBrowser|wap" [NC]

以上转换好了,就没啥问题了
  支持 (0分)  反对 (0分)
回复  2017-09-30 14:30:45 6
 1  (总1页)
AMH社区列表
用户服务中心