问题:
我们有一个第三方门户,它复制 html/aspx 页面,并将其放入临时文件夹中,在所有情况下将扩展名更改为 .HTML(根页面也是 .aspx)。
不幸的是,这意味着它不执行 ASP.NET 内联脚本...
所以我的问题是:
是否可以让 IIS 6 和 7 将 HTML 页面解释(然后执行)为 aspx 页面?
(无法更改第三方门户)
应该是可以的。
我只找到这个:
http://forums.digitalpoint.com/showthread.php?t=270061
但它只谈论的是 asp,而不是 asp.net。
答案1
是的,这是可能的。您提供的链接是正确的,尽管如您所说,它是针对 asp.dll 而不是 aspnet_isapi.dll。
在IIS6中执行的方法是:
- 编辑网站的属性
- 选择主目录标签
- 点击配置按钮
- 编辑您的 .aspx 条目并将路径复制到剪贴板
- 为 .html(如果需要,也可以为 .htm)创建一个新的扩展名,然后将内容粘贴到剪贴板中。
您还需要告诉 ASP.NET 如何处理 .html 页面。为此,请在 web.config 文件中,向 httpHandlers 部分添加一个新条目,如下所示:
<httpHandlers>
<add path="*.html" verb="*" type="System.Web.UI.PageHandlerFactory" />
</httpHandlers>
在 IIS7 中,如果您在经典模式下运行应用程序池,则转到网站和处理程序映射部分。
记下 Path=.aspx 的条目。
复制它们并将其制作为 .html。
然后对您的 web.config 执行我上面提到的相同步骤。
如果您在IIS7中使用集成模式,那么您只需要进行web.config添加。