问一个apache做301重定向的问题
网站以前是动态的,后来听说动态页搜索不太友好。
就做了伪静态,服务器是apache的
旧的动态地址是:/news/newsDetail.do?investNewsId=14207
新的伪静态地址:/news/14207.html
做伪静态的配置是
RewriteRule /news/([0-9]+).html /news/newsDetail.do?investNewsId=$1 [PT]
RewriteRule /news/([0-9]+)_([0-9]+).html /news/newsDetail.do?investNewsId=$1&page=$2 [PT]
这样就可以通过新的地址来访问了,伪静态完成。
注意:第二条是翻页的伪静态
当完成这些后,出现了一个问题。
因为网站上线已经两年多了,以前的动态页都已经被搜索引擎收录了,而且有些动态页面的权重已经很高了。
想通过301把那些权重给转过来
于是做了以下配置
Redirect permanent /service/about.html http://localhost/service/about.jsp
这个是单页面的,没问题
因为apache手册上没有写带参数的301跳转,于是自己瞎写了一个
Redirect permanent /news/newsDetail.do?investNewsId=^([0-9]+)$ http://localhost/news/$1.html
结果没成功,当输入/news/14207.html时候,可以正常访问,但是输入/news/newsDetail.do?investNewsId=14207时候,没有跳转到/news/14207.html
不知道怎么写带参数的301跳转,麻烦会的指点下。