301从特定.html页面重定向到新的永久链接结构失败

时间:2012-09-14 21:47:56

标签: wordpress .htaccess redirect permalinks

我一直在网上搜索一个多小时,试图找出我的.htaccess文件没有按预期工作的原因,但所有关于.htaccess的文档和问题似乎都表明一切都应该没问题。我现在正在使用wordpress网站,需要将一些旧的链接重定向到* .html文件到新的永久链接(由于命名约定完全改变,逐个)。所以我的.htaccess文件看起来像这样:

# Redirects for old URLs
redirect 301 /contact_us http://rpcdev.thisisforge.com/contact/
redirect 301 /about_us http://rpcdev.thisisforge.com/about/
redirect 301 /clients http://rpcdev.thisisforge.com/work/
redirect 301 /clients/event.html http://rpcdev.thisisforge.com/work/event-retail-design/
redirect 301 /clients/identity.html http://rpcdev.thisisforge.com/work/identity-branding/
redirect 301 /clients/web.html http://rpcdev.thisisforge.com/work/web-design/
redirect 301 /clients/corp_lit.html http://rpcdev.thisisforge.com/work/brochures-publications/

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

前三个工作正常,它是来自特定.html页面的那些。我已经尝试将代码放在WOrdPress代码的上方和下方,并且我尝试切换301的顺序,因此.html重定向是第一个,而不是最后一个。但这没有帮助。奇怪的是,有时corp_lit.html重定向工作正常,但其他人没有。我可以看到没有押韵或理由!

我的浏览器或操作系统(Windows s7)是否从.htaccess或其他东西缓存301s,从它们输入错误的时候开始?我已经尝试清空浏览器缓存并在命令提示符下刷新DNS,但无济于事。

拉 任何帮助非常感谢。

1 个答案:

答案 0 :(得分:0)

Redirect指令将路径节点链接在一起,因此应用了第一个/客户端重定向而不是以下的重定向,尝试将其更改为使用RedirectMatch

 RedirectMatch 301 ^/clients/?$ http://rpcdev.thisisforge.com/work/