【发布时间】:2011-07-03 21:59:15
【问题描述】:
我管理一个大型 asp.net 网站,该网站之前已从静态 html 网站转换为 asp.net。
出于多种原因(主要是 SEO),我们决定在最初转换网站时不将所有文件重命名为 .aspx。这很容易做到,只需将 buildProvider 和 httpHandler 添加到 web.config。
<buildProviders>
<add extension=".html" type="System.Web.Compilation.PageBuildProvider"/>
</buildProviders>
<httpHandlers>
<add path="*.html" verb="*" type="System.Web.UI.PageHandlerFactory"/>
</httpHandlers>
现在我正在升级站点以使用带有 Razor cshtml 文件的 Asp.net WebPages。如果需要,我可以重命名所有文件,并使用 url 重写使 url 保持不变,但是如果我可以配置 web.config 告诉它解析 .html 文件,就好像它们是 .cshtml 一样容易得多.
我已经搜索了很多,但找不到任何与 PageHandlerFactory 等效的剃须刀页面。看起来它只是 .net 4.0 ISAPI 处理程序中的一种内部机制。
该站点目前在 Windows 2003 服务器和 IIS 6 上运行。我们将在不久的将来升级到 2008/IIS 7.5,但我不想等到那个。
有没有办法让 .html 文件像 .cshtml 文件一样被 razor 解析?
【问题讨论】: