几年前我们有一个旧的coldfusion网站,最近我发现有一些旧的链接仍然存在,导致404错误。我不知道任何页面上有什么,我只是想将它们重定向到一个新的静态页面。我们的新网站是一个启用了SEF网址的Joomla 1.5网站。
旧网址如下所示:http://www.example.com/content.cfm?id=2010
其中网址之间的唯一区别是id=
之后的数字。
我想将以content.cfm
开头的任何网址重定向到静态网页http://www.example.com/oops-thats-an-old-page
,其中列出了一些有用的链接,可以找到他们要查找的内容。
我使用.htaccess文件中的以下代码成功完成了此操作:
RewriteCond %{QUERY_STRING} id=
RewriteRule (.*) http://www.example.com/$1? [R=301]
RewriteRule ^content\.cfm$ /oops-thats-an-old-page [R=301,L]
我是重新编写网址的新手,我不确定这是最好的方法。我也担心它可能会制造我不知道的非sef joomla URL,因为它们中也包含id=
。
我是否可以根据是否以content.cfm
开头进行重写?
答案 0 :(得分:0)
当查询包含id=
时,将应用第一条规则。如果您不希望这样,而只是在请求包含/content.cfm
的查询的id=
时重定向,请尝试以下规则:
RewriteCond %{QUERY_STRING} id=
RewriteRule ^content\.cfm$ /oops-thats-an-old-page? [R=301,L]