最近我们网站的一个路径需要修改一下,于是就只能这样写一个网址的跳转。但问题是我们用的永易搜CMS,因为历史的原因一直是用www和m二级域名分别做电脑和手机网站,如果这样写,那就需要全部都跳转到电脑网站上了:
RewriteRule ^t_([a-z0-9\-_]+).html$ https://www.390seo.com/tag/$1/ [L,R=301]
于是想着给那个前边的网址去掉改成这样:
RewriteRule ^t_([a-z0-9\-_]+).html$ tag/$1/ [L,R=301]
谁知道竟然跳转到物理路径,不是我们想要的:
https://www.390seo.com/ www/users/HA9999999/WEB/tag/chunbaimao/
于是从网上找了一下,找到一个比较好的解决方案就是用:%{REQUEST_URI} 来代替网址。
最后的代码是:
RewriteRule ^t_([a-z0-9\-_]+).html$ https://%{HTTP_HOST}/tag/$1/ [L,R=301]
搞定!
思路:%{HTTP_HOST}也可以放在跳转后的代码作为通配符,匹配访问域名。
转载请注明:伪静态技术博客 » 伪静态中301跳转必须写跳转后的全部网址?这样可以省略