我正在尝试配置我们的 IIS 服务器,以便当请求旧页面时,例如 http://mycompany.com/details.asp?item_id=1111 它应该重定向到 http://mycompany.com/items/1111
我不确定哪种方法最好?1. 在项目的 web.config 文件中...但我不确定这是否适用于变量 2. MetaBase...我们目前正在使用 VBScript 尝试此操作,但由于我们对它很陌生,所以遇到了问题 3. 其他?
任何帮助都将非常有帮助。
谢谢雅克
答案1
在 IIS6 中最好的选择是ISAPI 重写。它就是为这种情况而设计的。当您迁移到 IIS7 时,会内置对 URL 重写的支持。
编辑:由于这是 IIS6,除非您将 .asp 映射到 aspnet_isapi.dll 而不是 asp.dll(但这样它就不会以相同的方式处理页面),否则 web.config 将无法重定向 .asp 页面(非托管代码)。因此 IIS6 本身无法干净地完成此操作。
您可以在 details.asp 页面中监视 item_id=something 并执行 Response.redirect。
或者,如果您希望它更加通用且适用于多个页面,您可以在 global.asa Application_BeginRequest 中执行此操作。