青海龙8国际乐建设、网络推广最好的公司--您身边的龙8国际乐建设专家,马上拿起电话,联系我们:0971-8235355   
青海西宁龙8国际乐建设、龙8国际乐制作公司-西宁威势电子信息服务有限公司
 
西宁威势最新龙8国际乐制做案例展示
Lastest Project
 
当前位置为:首页 >> .NET编程 >> 正文  
龙8国际乐_龙8国际娱乐电脑版_龙8国际娱城手机版

文章来源: 西宁威势电子信息服务有限公司     发布时间:2010-10-21    浏览次数:7532   

今天在做一个龙8国际乐的时候。进行URL重写操作。结果出现了两个让人意想不到的事情。。真 是头疼

 

第一个到现在还没有结果呢。。也不知道具体是什么原因

配置好映射以后。其他页面都正常重写成功。但有个别重写不了

一个是about.aspx,一个是contact.aspx

实际访问这两个ASPX文件都可以正常显示。

重写成about.html和contact.html就是打不开。。提示该页无法显示

 

网上搜索也没什么结果。后来我把文件名改了一下。改成company.aspx和contactus.aspx

再重写。。就正常了。。难道这两个文件名不能使用。。真是怪?!

 

 

第二个问题。就是重写完成以后。真实存在的HTML文件却打不开了。。

 

不过这个问题。在网上找到了答案。。

今天把它复制下来。。以便以后查看

 

网上搜索出来的 

 

问题描述:
    一 套龙8国际乐程序使用URL重写,配置了ISAPI映射.html  动作全部,检查文件是否存在 不打勾 如下图 

 

  问题:不对IIS配置.html的映射,IIS站点目录下.html页面都能显示。当配置了.html的映射 IIS站点目录下真实存在的.html页面无法显示,错误信息:“页面无法显示”而通过自定义HttpHandlerFactory块过滤的.html文 件能够显示,由于这个原因就连FCKEditor也无法正常显示。

这个问题困扰了 半天,极度郁闷, 在网上找了好久,也没有个办法,有一个 和我一样的问题,但上面说的解决方法却不好用,更是郁闷,后来经过n次的测试修改,才把这个问题解决了,解决方法:
1、首先照旧在龙8国际乐配置的应用程序扩展名映射中添加扩展名.html映射到aspnet_isapi.dll,是否存在不选;
2、在web.config文件中<compilation>节点下添加code:

<buildProviders>
        <add extension=".html" type="System.Web.Compilation.PageBuildProvider" />
</buildProviders>
注:仅仅设置应用程序映射是不够的,没有为扩展名“.html”注册的生成提供程序。因 此别忘了上面的code!

3、在web.config文件中<system.web>节点下添加code:
<httpHandlers>
      <add path="html/*.html" verb="*" type="AutoModuleService.AutoHandlerFactory,AutoModuleService" validate="true"/>
      <add path="*.html" verb="*" type="System.Web.UI.PageHandlerFactory" validate="true"/>
    </httpHandlers>

注:这里值得注意的是add的先后顺序,很简单的原理,通过这个配置文件请求首先 要到我们自定义的httpHandler块,如果不在我们指定的path里,则走系统的PageHandlerFactory; 还 有一个要注意的地方就是,这里当

<add path="html/*.html" verb="*" type="AutoModuleService.AutoHandlerFactory,AutoModuleService" validate="true"/>
指明路径后,并不像下级目录继承,也就是当用户浏览html/vip/index.html时,并不被我自定义的 AutoModuleService.AutoHandlerFactory处理,而是被系统的 System.Web.UI.PageHandlerFactory正常处理;如果需要继承指明路径下包括下级目录所有*.html的话,则就需要做些修 改了

修改方法:

上面的1和2照做;

3、在web.config文件中<system.web>节点下添加code:

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

4、在web.config文件中<configuration>节点下使 用<location>节点,添加code:

  <location path ="html">

    <system.web>
      <httpHandlers>
        <add path="*.html" verb="*" type="AutoModuleService.AutoHandlerFactory,AutoModuleService" validate="true"/>
      </httpHandlers>

    </system.web>

  </location>

 

最后补充两点:
如果你用到的后缀类型是一种古怪的后缀。
比如:*.aaa *.csdn 等这样的后缀,
在IIS6 中,你需要额外再多做一步:
在IIS的站点属性->HTTP头->MIME类型中增加一个该后缀的MIME类型,不然遇到该后缀的请求时将首先被IIS给拦截掉,没办法 显示的。


评论列表
正在加载评论……
  
评论   
呢  称:
验证码:
若看不清请点击更换!
内  容:
 
 
  在线洽谈咨询:
点击这里,在线洽谈   点击这里,在线洽谈   点击这里,在线洽谈
乘车路线    汇款方式   加盟合作  人才招聘
 
公司地址:青海省西宁市西关大街73号(三二四部队招行所四楼)     青ICP备13000578号-1 公安机关备案号:63010402000123    
QQ:147399120    mail:lostlove000@163.com    电话: 13897410341    邮编:810000
© Copyright( 2008-2009) QhWins.Com All Rights Reserved    版权所有:西宁威势电子信息服务有限公司 未经书面制授权,请勿随意转载!