2009-10-12 87 views
1

我有一个经典的asp webapp,我需要实现url重写。我之前使用了asp.net应用程序中的intelligencia url重写器,所以我目前的思路是创建一个新的asp.net应用程序,将url重写组件添加到它,然后在顶部添加经典的asp应用程序。它托管在共享网站空间中,因此我无法将isapi组件添加到网络服务器。在经典的asp webapp中使用intelligencia url re-writer

这是正确的方式吗?我需要做些什么配置更改才能让经典的asp和asp.net开心地坐在一起?

任何意见将不胜感激。

回答

1

您可能可以使用404.asp来执行此操作。我在IIS6上运行HELM,可以像这样使用我的404.asp:

URLPath = LCase(Replace(Request.Servervariables("QUERY_STRING"), "404;http://" & Request.ServerVariables("SERVER_NAME") & ":" & Request.Servervariables("SERVER_PORT"), "")) 

If URLPath = "/lalala" Then 
    Response.Status="200 OK" 
    Response.Write "La la la!" 
Else 
    Response.Status="404 Not Found" 
    Response.Write "File not found." 
End If 
+0

Hi Oskar。这不是我目前正在采取的方针,但是如果我没有得到一个智能URL重写和.net的结果,那么我会尝试你的角度。我不确定url重写器是否会在引擎盖下使用相同的想法,但是我担心如果搜索引擎将其视为某种隐藏技术。目前我知道谷歌没有问题,我跟随的技术...唯一的麻烦是我不知道它是否会工作。 – Rich 2009-10-13 15:56:03

+0

@Oskar 已经放弃了我正在采取的角度,并认为你的路线是最好的前进方向。一个问题是,在没有找到该页面并且网络服务器提供了自定义404的时间之前,客户端(搜索引擎或浏览器)是否意识到该页面尚未找到并且正被重定向?或者这部分对客户是完全隐藏的。即客户端看到的唯一状态码,我们在404.asp的Response.status =行中编码的内容? – Rich 2009-10-15 11:13:33

+0

客户端将只接收由此脚本确定的状态,不会发送额外的404和3XX状态。至少这就是它在我的系统上的工作原理。你可以使用这个工具来检查:http://www.seoconsultants.com/tools/headers.asp – 2009-11-16 10:17:40