我用的是 VS 2005 的开发工具想使用微软的重写组件(download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/MSDNURLRewriting.msi)  
但是不知道那里有错误.总是说"无法找到资源 ,  
说明: HTTP 404。您正在查找的资源(或者它的一个依赖项)可能已被移除,或其名称已更改,或暂时不可用。请检查以下 URL 并确保其拼写正确。  
<?xml version="1.0"?> <configuration> 
   <!--这里要加入一个configSections节--> 
   <configSections> 
     <section name="RewriterConfig" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter" /> 
   </configSections>    <!--这里要加入一个RewriterConfig用来配置规则--> 
   <RewriterConfig> 
     <Rules> 
       <RewriterRule> 
         <!--匹配guid参数--> 
         <LookFor>  ~/([A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12})\/Class.aspx  </LookFor> 
         <SendTo>  ~/Class/Default.aspx?id=$1  </SendTo> 
         <!--即访问类似于~/9e808623-f0f9-49c4-86f2-9891015d405b/Class.aspx的页面将发往~/Class/Default.aspx?id=9e808623-f0f9-49c4-86f2-9891015d405b--> 
         
         <LookFor> ~/Default.html </LookFor> 
         <SendTo> ~/Default.aspx </SendTo> 
         
         <LookFor> ~/d(\d+)\.aspx </LookFor> 
         <SendTo> ~/default.aspx?id=$1 </SendTo> 
       </RewriterRule> 
     </Rules> 
   </RewriterConfig>    <appSettings/> 
   <connectionStrings/>    <system.web>      <httpHandlers> 
       <!--这里加入urlRewriter.dll要处理的后缀文件--> 
       <add verb="*" path="*.aspx" type="URLRewriter.RewriterFactoryHandler, URLRewriter" /> 
       <add verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter"/> 
     </httpHandlers>      <httpModules> 
       <add type="URLRewriter.ModuleRewriter, URLRewriter"  name="ModuleRewriter" /> 
     </httpModules> 
     
     <compilation debug="true"/> 
     <authentication mode="Windows"/> 
   </system.web> 
</configuration> 
而连接是这样的  
          <a href="~/Default.html" runat="server"> aaaaaaaaaaa  </a> 
想连接到  
        Default.aspx  这个页面  
但是总是说无法找到该页不知道那里还需要修改.请大家指点一下(我已经将该组件放在bin目录里了)  
注:为了节省您宝贵的时间请不用说一些其它的技术谢谢.

解决方案 »

  1.   

    IIS里的映射没弄好吧?
    IIS--->站点属性--->主目录--->配置--->映射--->找到对应aspx的映射--->编辑--->把"确认文件是否存在"前的勾去掉
      

  2.   

    在找到aspx映射后你还需要添加html的后缀名在iis中,因为htm的文件不在iis的列表中,所以当请求过来时,iis会找寻有没有该htm文件,有则直接下发,没有则提示无法找到该页面建议你把重写成html改成shtml,然后找到shtml映射,把确认文件是否存在勾去掉,就可以了
    <add verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter"/>   改成:
    <add verb="*" path="*.shtml" type="URLRewriter.RewriterFactoryHandler, URLRewriter"/>   
      

  3.   

    <RewriterRule>  
              <!--匹配guid参数-->  
              <LookFor>   ~/([A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12})\/Class.aspx   </LookFor>  
              <SendTo>   ~/Class/Default.aspx?id=$1   </SendTo>  
              <!--即访问类似于~/9e808623-f0f9-49c4-86f2-9891015d405b/Class.aspx的页面将发往 ~/Class/Default.aspx?id=9e808623-f0f9-49c4-86f2-9891015d405b-->           
            </RewriterRule>   
    <RewriterRule>
            <LookFor>~/Default6.html</LookFor>
            <SendTo>~/Default6.aspx</SendTo>
          </RewriterRule>去了空格  我这好的了