使用.htaccess重定向URL的一部分

时间:2012-05-09 06:29:40

标签: wordpress .htaccess

我正在尝试将301重定向到新的类别名称:

http://www.site.com/category1/post1/ 至     http://www.site.com/category1-new/post1/

其他网页的网址中还有“category1”,所以它必须与“/ category1 /”完全相同,并且紧跟在域名之后。

我尝试过不同的模式,但它们总是以无限循环结束。

编辑:

代码:

RewriteCond %{HTTP_HOST} ^site-suchen.de$ [OR]
RewriteCond %{HTTP_HOST} ^www.site-suchen.de$
RewriteRule ^site\/(.*)$ "http://www.site-suchen.de\/site-new\/$1" [R=301,L]

实际网址:

http://www.site-suchen.de/site/post1 

需要重定向到

http://www.site-suchen.de/site-new/post1

感谢。

2 个答案:

答案 0 :(得分:0)

这里重要的事情可能是你希望^和$标记你匹配的字符串的开头和结尾。虽然这只是猜测,除非你发布一些你已经尝试过的代码。

RewriteRule ^category1/post1/$ category1-new/post1/

或者它可能是(我不记得你是否在模式和/或替换字符串中指定了/):

RewriteRule ^/category1/post1/$ /category1-new/post1/

答案 1 :(得分:0)

您可以使用RedirectMatch吗?

RedirectMatch 301 ^/(site1|site2|category1)(/.*|$) /$1-new$2

从长远来看,此代码可以维护,因为您可以在括号内添加新路径 (site1 site2 category1等)

我在本地主机上试过这个,它应该可以解决你的问题

干杯!

相关问题