我们有一个以集成模式托管在 IIS 7 上的 ASP .Net 应用程序。
这个 ASP .Net 应用程序中有一些经典的 ASP 页面。当我尝试从经典 ASP 页面发送表单并尝试使用 Request.Form("name")
访问发布的数据时,它给了我未指定的错误。请求对象在表单发布中被删除。
如果我将包含经典 asp 页面的文件夹更改为应用程序,并将其应用程序池更改为使用经典模式的新应用程序池,则一切正常。
我可以在集成模式下在 IIS 7 上托管的 ASP .Net 应用程序中运行经典 ASP 页面吗?
我们的 Web 应用程序使用 Sitecore 6.5。
最佳答案
是的,您可以使用集成管道在 IIS7 上运行 ASP Classic。
您可能需要添加自定义 HTTP 处理程序。看看Kim Hansen的回答。她使用以下代码:
<add name="ASPClassic" path="*.asp" verb="GET,HEAD,POST" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" resourceType="File" requireAccess="Script" />
看看this有关在 IIS7 上运行 ASP Classic 的一些一般提示的资源。
其他一些需要研究的事情:
- 默认情况下禁用 32 位应用程序。某些 COM 对象需要启用此功能。可以为每个站点设置此选项
- 看看
comPlus
entry在 web.config 中。特别是executeInMta
在某些情况下对于经典 ASP 可能很重要。
关于asp.net - 在集成模式下运行的 IIS 7 经典 ASP 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10174783/