已添加书签的页面重定向

时间:2008-10-29 13:57:52

标签: redirect asp-classic coldfusion

我最近将一个网站从asp转换为CF.不幸的是,很多旧用户都将“主页”加入书签。 www.example.com/homepage.asp

是否有一种方法可以将所有流量从该页面重定向到当前的index.cfm?

我通常会删除这些文件,但是所有者希望保留它们以用于比较原因。

有什么想法吗?

由于

5 个答案:

答案 0 :(得分:6)

将它放在旧的homepage.asp

<%@ Language=VBScript %>
<%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "/index.cfm"
%>

答案 1 :(得分:2)

如果您不想在新网站上运行繁琐的asp文件,则可以在Web服务器上执行自定义404。如果将404页面指向.cfm文件,则可以通过包括以下内容从请求中提取所有各种功能:

<!--- parse out the text in the URL parameters into an array --->
<cfset variables.requestparams = listtoarray(cgi.query_string,'/?&')>

<!--- get rid of the first 2 items in the array since they dont represent request info --->
<cfset foo = arraydeleteat(variables.requestparams,1)>
<cfset foo = arraydeleteat(variables.requestparams,1)>

您将留下一个数组,表示原始请求中传递的参数。您可以通过对url组件进行任何分析来对其进行跟进,以将其映射到CF站点中的类似页面。

答案 2 :(得分:2)

我很惊讶没人提到网址重写。您可以在* nix / apache上使用mod_rewrite,或在Windows / IIS上使用ISAPI RewriteIonics ISAPI Rewrite。如果我在IIS上,我更喜欢Ionics。

答案 3 :(得分:0)

最好的办法是在实际的homepage.asp页面中进行元刷新,它既快又脏,但有效。

更好的解决方案是让.asp页面执行301重定向到新主页,这样当搜索引擎访问该页面时,他们知道它已移动。

答案 4 :(得分:0)

当我遇到类似这样的事情时,我在Linux机器上做的是创建一个符号链接(ln -s /path/to/source /path/to/target)。

不确定Windows的等价物是什么,所以使用@ Patrick's回答可能是最好的。

编辑 - 制作符号链接的NTFS方式:
http://en.wikipedia.org/wiki/NTFS_symbolic_link
另见http://en.wikipedia.org/wiki/Symbolic_link