我正在努力修复我的所有网址,使其与301重定向更短。我已经解决了几乎所有的问题,但是以.cfm结尾的网址不会重写。htaccess重写规则不适用于以.cfm结尾的网址
FROM: http://www.mydomain.com/index.cfm/catlink/17/pagelink/7/sublink/34/art/41/rec/1/page.cfm
TO: http://www.mydomain.com/story/resources/health/page/168/page.html
如果我改变/page.cfm
到/page.html
然后重写会工作。
这里是重写规则,对我的其他URL
RewriteRule ^index.cfm/catlink/([a-zA-Z0-9/-]+)([/])pagelink/([a-zA-Z0-9/-]+)([/])sublink/([a-zA-Z0-9/-]+)([/])art/([a-zA-Z0-9/-]+)(.*)$
http://localhost/index.cfm?page=moved&cat=$3&subcat=$5&article=$7&story=$8 [R=301]
为什么当URL以.html结束,但是当它与.CFM结束不是工作的工作?我究竟做错了什么?
这是当前的链接,将无法正常工作:
http://www.mydomain.com/index.cfm/catlink/17/pagelink/7/sublink/34/art/41/rec/1/page.cfm
如果我手动更改它的结束为.html,我可以得到它的工作:
http://www.mydomain.com/index.cfm/catlink/17/pagelink/7/sublink/34/art/41/rec/1/page.html
显示您正在尝试的两个链接。这就是'html'链接传递和'cfm'链接失败的原因。 –
我已经添加了如何更改链接以使其正常工作。只要看看网址的结尾。 – dadtothebone
你的正则表达式比较宽松。我认为这是你的根本原因。你正在捕获数字的一切吗? –