我有一个较旧的经典ASP网站,我正在迁移到IIS7.5。我不想在服务器上安装经典ASP,所以我只想将.asp文件视为.aspx文件。
如何在IIS7.5中执行此操作?
编辑:为了澄清,我不是要问如何在.Net下使用经典的ASP代码。我只是想知道如何映射.net运行时要处理的.ASP文件扩展名。我将.asp文件中的代码升级到.net。修改
我放弃并最终安装了经典的ASP,因为我无法使映射工作(收到404.17和404.3错误的组合)。我将David Lively的答案标记为正确,因为它是最详细和最有帮助的。
答案 0 :(得分:3)
这不会起作用。处理执行ASP.NET应用程序的Aspnet_isapi.DLL不了解经典ASP,并将尝试将经典VBScript代码解析为.NET VBScript。
唯一可行的方法是,如果您的.ASP页面中没有(我的意思是绝对无)经典ASP代码。
如果是这种情况,您可以将.ASP扩展名映射到IIS管理器中的aspnet_isapi。
C:\Windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll
(假设您使用的是ASP.NET 2.x)。同样,如果你的.asp页面中有任何代码,这将导致每个.ASP页面出现光彩的技术色彩失败。
另一种选择是使用重写引擎(我们使用ISAPI Rewrite)将传入请求的文件扩展名从.asp更改为.aspx。
为什么不在服务器上安装经典ASP?它与ASP.NET并行工作得很好。
修改强>
它实际上被称为“处理程序映射”。见上图。
答案 1 :(得分:0)
它无效。 ASP和ASP.NET是不同的东西。
例如,ASP.NET不支持VBScript。它也不支持包含。
答案 2 :(得分:0)
我认为IIS7中的defualt没有启用ASP,因此您可能必须使用Windows控制面板启用它控制:
面板/程序/打开/关闭Windows功能/ Internet信息服务/ WorldWideWeb服务/应用程序开发功能/ [ASP] [ISAPI过滤器]等...
然后选择您需要的所有功能。
干杯
答案 3 :(得分:0)
您必须按照下面给出的开始菜单获取VS2010命令提示符。
开始 - >所有程序 - > Microsoft Visual Studio 2010 - > Visual Studio工具 - > Visual Sutdio命令提示符(2010)
右键单击Visual Studio命令提示符(2010)并选择以Windows 7和Vista为例运行管理员
然后应用aspnet_regiis.exe -i