为啥我的经典 ASP 页面不能在我的 ASP.NET 应用程序的根目录中运行?
Posted
技术标签:
【中文标题】为啥我的经典 ASP 页面不能在我的 ASP.NET 应用程序的根目录中运行?【英文标题】:Why won't my classic ASP page run in the root of my ASP.NET app?为什么我的经典 ASP 页面不能在我的 ASP.NET 应用程序的根目录中运行? 【发布时间】:2009-09-28 20:33:09 【问题描述】:这是我的情况 - 我有一个 ASP.NET 应用程序在生产环境中运行了很长时间(Framework 2.0),最近通过在 IIS 中切换应用程序的主路径从一个根目录迁移到另一个根目录。一切都运行良好,除了任何经典的 .asp 脚本。当您使用浏览器点击它们时,它们会像标准文本文件一样开始下载。
应用程序配置没有改变,只是根主目录。此外,我在同一台机器上还有其他应用程序允许 .asp 在其中执行。
有什么想法吗?
【问题讨论】:
请 serverfault 的人员帮助您。 【参考方案1】:并排运行它们应该没有问题(尽管交叉基本上是不可能的)所以听起来 IIS 没有配置为处理经典的 ASP 请求。检查您的 IIS 配置(iirc、Web 服务扩展 > ASP > 复选框)是否设置正确。
如果失败了,您可以在站点内使用它自己的配置将这一部分重新创建为虚拟目录吗?
【讨论】:
谢谢 - 我不是在寻找交叉。这一切以前都运行得很好。正如我所提到的,我只是将应用程序主目录指向服务器上的不同位置(原始目录的对等目录),除了经典的 asp 脚本外,一切正常(asp.net 等)。此外,我已经成功地在不同的位置创建了一个虚拟目录,该目录从目录下方执行 asp 脚本。但是,这是一个旧版应用程序,其中一些旧版客户端指向 Web 根目录下的脚本。老实说,我可以重新指出每个人,但想知道真正的问题是什么。 哦,在 IIS > Web Service Extensions > Active Server Pages 中一直是允许的。【参考方案2】:我的猜测是您的 ASP.Net 应用程序扩展要么未映射,要么映射到文本处理可执行文件。
您的 ASP.Net 应用扩展是什么? .aspx?在 IIS 管理工具中获取应用程序的属性,单击虚拟目录、配置。查看您的扩展的处理程序,它应该是 aspnet_isapi.dll。
【讨论】:
ASP.NET 工作正常 - 我遇到了以前工作的经典 asp 脚本的问题。 您的经典 ASP 扩展是什么? .asp?检查那个处理程序是(我认为)asp.dll以上是关于为啥我的经典 ASP 页面不能在我的 ASP.NET 应用程序的根目录中运行?的主要内容,如果未能解决你的问题,请参考以下文章
在 asp.net 和 Join 语句中连接到 Access 数据库