日期:2014-05-17  浏览次数:20397 次

web.config伪静态里有个正则不会写!
比如:www.xxx.com/user/?username=csdn
伪静态之后就是:www.xxx.com/csdn

使用了这个规则之后。发现:www.xxx.com 无法打开了,只能输入:www.xxx.com/index.html打开。

包括
www.xxx.com/login
www.xxx.com/reg
www.xxx.com/help

登录页,注册页。等等二级页面都无法打开。
请问下,正则里怎没排除 index.html 、login 、reg 、help ,等!让这些页面可以打开。

代码如下:

  <configSections>
    <section name="CustomConfiguration" type="URLRewriter.Config.UrlsSection, URLRewriter"/>
  </configSections>
  <CustomConfiguration>
    <urls>
      <add virtualUrl="~/index.html" destinationUrl="~/default.aspx"/>      
      <add virtualUrl="~/([\w]+)*" destinationUrl="~/user/?username=$1"/>
    </urls>
  </CustomConfiguration>
正则

------解决方案--------------------
~/((?!index
------解决方案--------------------
login
------解决方案--------------------
reg
------解决方案--------------------
help)\w+).html

~/user?username=$1