我需要我的 .net 应用程序使用 .html 扩展名而不是 .aspx

我正在转换一个 php 应用程序,并且有一些外部应用程序依赖于该扩展来运行。

做这个的最好方式是什么?

谢谢

有帮助吗?

解决方案

在IIS中,为虚拟目录创建应用程序时,单击“配置”按钮。对于应用程序,并编辑“应用程序映射”,即为html添加新映射。

或者,在您的web.config中,添加以下部分:

<httpHandlers>
   <remove verb="*" path="*.html" />
   <add verb="*" path="*.html" type="System.Web.UI.PageHandlerFactory" />
</httpHandlers>
<compilation>
   <buildProviders>
       <buildProvider 
           extension=".html" 
           type="System.Web.Compilation.PageBuildProvider" />
   </buildProviders>
</compilation>

编辑:根据评论添加了该部分。谢谢Chris。

其他提示

您想使用 httpHandlers

请注意,我不能 100% 确定这适用于 PHP 扩展,我们在这里将此过程用于自定义扩展。

您可以更改 IIS 配置:打开 IIS 控制台(右键单击我的电脑 > 管理...> 服务和应用)

  • 如果您在网站中,请打开网站属性和“主目录”选项卡。
  • 如果您位于虚拟目录中,则属性将显示“虚拟目录”选项卡。

单击“配置按钮”,查找 .aspx 扩展名并对“.php”扩展名使用相同的配置(提示:您可以在两个对话框之间复制粘贴可执行 dll 名称)

前一段时间,我们将一个Web应用程序从coldfusion迁移到PHP,并且必须保留旧的URL。我们这样做的方法是使用mod_rewrite将.cfm URL重写为.php。也许你可以做类似的事情?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top