我正在尝试配置我的htaccess文件以处理我们的新url格式。我知道htaccess文件正在运行。我试图调整什么是无效的。
我有大约1200个看起来像这样的链接......
http://www.flyingpiston.com/bike/1014/
http://www.flyingpiston.com/bike/1015/
http://www.flyingpiston.com/bike/1016/
http://www.flyingpiston.com/bike/1017/
新链接看起来像这样......
http://www.flyingpiston.com/bikes.cfm?id=1014
http://www.flyingpiston.com/bikes.cfm?id=1015
http://www.flyingpiston.com/bikes.cfm?id=1016
http://www.flyingpiston.com/bikes.cfm?id=1014
这是我设定的规则......
RedirectMatch 301 ^bike/([0-9]+)/ /bikes.cfm?id=$1 [NS,L]
规则有明显的错误吗?如何编写一条规则,使我能够将旧样式链接重定向到新样式链接?
答案 0 :(得分:2)
RedirectMatch
指令不带任何标志,因此[]
位需要消失:
RedirectMatch 301 ^bike/([0-9]+)/ /bikes.cfm?id=$1
但是当有人打字时,其他人看起来很适合重定向:
http://example.com/bike/1234/
在浏览器的地址栏中将其更改(重定向)为:
http://example.com/bikes.cfm?id=1234
这也假设您正在使用apache,并且该指令位于文档根目录中的htaccess文件中。