1、一、简单的数字形式链接跳转例如:http://www.baidu.com/2016/12/24/seo/ 重定向为http://www.baidu.com/seo.html说明:http://www.baidu.com/%year%/%monthnum%/%day%/%postname%/http://www.baidu.com/%postname%.html/%year%/%monthnum%/%day%这个路径表示的意思是“年、月、日”3层路径,%postname%是名称。现在需要去掉“年、月、日”这几个多余的层级,变成http://www.baidu.com/%postname%.html这种形式。重定向语句:RedirectMatch301^/([0-9]+)/([0-9]+)/([0-9]+)/(.*)/$/$4.html解释:RedirectMatch 301 ^可以认为是规则的开始;中间的三个([0-9]+)分别代表数字“%year%、%monthnum%、%day%”;(.*)代表最后文章的名称或者ID即“%postname%”;这四个变量可以赋予编号$1、 $2 、$3 、$4,(.*)和$4.html中间的$可以理解为新老网址的连接符号(注意:$ /$4.html这个符号$和后面的/之间有空格)。我们要做的就是前面的日期都不要,只留最后的文章名,然后在结尾后面加上.html,所以修改后前面的三个([0-9]+)都不要,只保留最后的(.*),通过下图我们知道(.*)代表$4,所以后面的规则只需写上$4.html就行了。
2、二、字符形式类链接跳转1、例如:http://www.baidu.com/123 重定向为http://www.b锾攒揉敫aidu.com/seo/123.html说明:http://www.baidu.com/%id%http://www.baidu.com/%postname%/%id%.html重定向语句:RedirectMatch301^/(\d+)$/(.*)/$1.html解释:前面我们说过(\d+)代表是任意数字,所以前面的数字变量“%id%”可以写成(\d+);“%postname%”是名称肯定是字符,而任意字符(包括汉字、英文字母等)对应的表示符号是(.*);其中数字变量“%id%”即(\d+)对应的编号是$1,我们需要做的是在旧的文章链接的数字ID前面加一个分类名称,所以前面变量的表示方式为/(\d+),后面的可以写成/(.*)/$1.html,再在它们之间加一个链接符号$就行了。2、http://www.baidu.com/postname/lizi/重定向为http://www.baidu.com/postname/lizi.html重定向语句:RedirectMatch301^/(.*)/(.*)/$/$1/$2.html3、http://www.bituiwan.cn/lizi/ 重定向为http://www.baidu.com/archives/lizi.html重定向语句:RedirectMatch301^/(.*)/$/archives/$1.html4、http://www.baidu.com/lizi重定向为 http://www.baidu.com/lizi.html
3、三、代码放置位置上面的代码可以放在这段代码<IfModule mod_rewrite.c>.....</IfModule>中间或者之外,比如这样:RedirectMatch301^/(\d+)$/$1.html#BEGINWordPress<IfModulemod_rewrite.c>RewriteEngineOnRewriteBase/RewriteRule^index\.php$-[L]RewriteCond%{REQUEST_FILENAME}!-fRewriteCond%{REQUEST_FILENAME}!-dRewriteRule./index.php[L]</IfModule>