asp.net伪静态后真正的静态文件无法访问的解决方法

发布时间:2020-08-01编辑:脚本学堂
在用asp.net与UrlRewriter实现网站伪静态时,遇到一个问题来,伪静态配置成功后,真正的静态文件(html)却无法访问了,应该如何解决呢?请看本文给出的办法吧。

步骤如下:
第一步:打开Web.config配置文件

第二步:设置如下节点 <system.web>下
 

<compilation debug="false">
<buildProviders>
<add extension=".html" type="System.Web.Compilation.PageBuildProvider" />
</buildProviders>
</compilation>

继续设置如下节点:
 

<httpHandlers>
<add verb="*" path="*.html" type="System.Web.UI.PageHandlerFactory"/>
</httpHandlers>

完成以上几步,就可以实现asp.net的伪静态html页面与真正的静态文件html同时存在,而且都可以正常访问了。

遇到此类问题的朋友,快用上面的方法解决吧,祝你好运哦。

##---附,asp.net中伪静态经重写后,遇到真实的html页面时报:无法执行url。

原因分析:可能经过伪静态处理后,遇到aspx页面可处理城html,但遇到真实的html后就不知道知道到如何处理了所导致的问题。

解决方案:
在配置文件中加入以下内容:
 

复制代码 代码示例:

<compilation>
<buildProviders>
<add extension=".html" type="System.Web.Compilation.PageBuildProvider"/>
</buildProviders>
</compilation>

<httpHandlers>
<add verb="*" path="*.html" type="System.Web.UI.PageHandlerFactory"/>
</httpHandlers>

附,asp.net伪静态提交服务器后还转到本页面的方法

Response.Redirect(Request.UrlReferrer.AbsoluteUri);