最近空间不太稳定老板要把java的空间换成asp.net的,但是那些好多jsp文件还不能改名字,如果在java里面配置非常规名字(比如http://localhost/abc/,abc/其实是个java写的类和jsp作用一样)可以配置web.xml中的servlet-mapping达到目的。不知道在asp.net中需要怎么配置,或者能不能有一种变通的方法,比如在所有服务器请求传递过来的时候不管请求路径或者页面是哪个都经过一个validate.aspx页面做处理然后再分发请求给各个aspx页面也就是比如访问地址是http://localhost/a.jsp实际没有这个文件,而实际访问的是http://localhost/a.aspx.请高手指教

解决方案 »

  1.   

    肯定asp.net不比Java差:请使用asp.net url rewrite
      

  2.   

    <section name="RewriterConfig" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter"/> 
       </configSections> 
       <RewriterConfig> 
       <Rules> 
       <!--地址重写规则--> 
       <!--首页,定位到静态页面--> 
       <RewriterRule> 
       <Type>Static</Type> 
       <LookFor>~/Default\.aspx</LookFor> 
       <SendTo>~/Default.htm</SendTo> 
       </RewriterRule> 
       <!--二级页面,定位到动态页面--> 
       <RewriterRule> 
       <Type>Dynamic</Type> 
       <LookFor>~/List\.aspx</LookFor> 
       <SendTo>~/Show.aspx</SendTo> 
       </RewriterRule> 
       </Rules> 
       </RewriterConfig> 
       <!-- RUL重写结束 --> 
      

  3.   

    谢谢楼上的,不过这样配置有点麻烦有没有更简单的方法,最好是在web.config中配置,不用依赖第三方工具,因为觉得或多或少对速度都会有影响,还有我的页面很多有几千个,一个一个配置太麻烦了,有什么更好的办法没有。
      

  4.   

        我在本地计算机配置URLRewriter测试没问题运行正常,可在万网的虚拟主机上却不成,开始显示500错误他们的技术给我这个回复:经过检查,您的站点的真实错误如下: Parser Error Message: An error occurred creating the configuration section handler for RewriterConfig: Unable to generate a temporary class (result=1). error CS2001: Source file 'C:\WINDOWS\TEMP\0zbmdjbe.0.cs' could not be found error CS2008: No inputs specified 说明您使用了rewrite等功能,需要在系统盘中写入'C:\WINDOWS\TEMP\0zbmdjbe.0.cs' 这个文件,而服务器上没有赋予此权限,导致您的站点无法浏览。我们已经为您进行了相应的配置权限,目前您的站点已经可以正常浏览了,请您重新测试。再看首页确实可以浏览了,可是随便敲个地址还是不能重定向到我的默认页。贴出配置文件高手帮忙告诉我哪出了问题,域名是5050club.cn<?xml version="1.0"?>
    <configuration>
      
      <configSections>
        <section name="RewriterConfig" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter"/>
      </configSections>  <RewriterConfig>
        <Rules>
          <RewriterRule>
            <LookFor>~/(.*)</LookFor>
            <SendTo>~/default.aspx?page=$1</SendTo>
          </RewriterRule>
        </Rules>
      </RewriterConfig>  <system.web>
        
        <httpModules>
          <add type="URLRewriter.ModuleRewriter, URLRewriter" 
               name="ModuleRewriter" />
        </httpModules>    <!--<httpHandlers>
          <add verb="*" path="*.aspx" 
               type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
        </httpHandlers>-->
        
    <compilation debug="true"/>
    <customErrors mode="Off"/>
      </system.web></configuration>