ASP中htaccess的替代解决方案

时间:2011-08-08 18:25:06

标签: .htaccess asp-classic url-rewriting rewrite isapi-rewrite

我有一个共享主机帐户,无法访问IIS服务器,因此无法在服务器或任何其他重写解决方案上安装ISAPI_Rewrite。

网站语言是经典ASP,想要创建重写规则,但我不能使用.htaccess文件。

那么有没有其他方法可以使用.htaccess?

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

如果您的托管服务器是Windows 2008(IIS 7),那么您可以{。{3}}获取.htaccess支持。

答案 1 :(得分:0)

如果您的主机允许您将其控制面板中的404自定义错误页面更改为ASP脚本,那么您可以使用模拟重写引擎的技巧。

如果将404自定义错误映射到/404.asp等页面,则可以解析QUERY_STRING服务器变量。这是一个非常简单的骨架,你可以开始:

<%
raw = Request.ServerVariables("QUERY_STRING")

' Extract URL
startPos = Instr(1, raw, ";",1) + 1
url = Mid(raw, startPos, Len(raw) - (startPos - 1))

' Assumes no wacky ports
startPos = Instr(1, url, ":80/",1)
If startPos = 0 Then 
  startPos = Instr(1, url, ":443/",1) + 4
Else
  startPos = startPos + 3
End If

' Get path/querystring
path = Mid(url, startPos, Len(url) - (startPos - 1))

' Now parse your path/querystring...your code goes here

Server.Transfer somePage
%>