规则:
<add name="Rule1" virtualUrl="^~/Shop/(\d+)/(\d+)/list_(\d+).html" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Shop/ShopList.aspx?id=$1&amp;sid=$2&amp;page=$3" ignoreCase="true"/>可是参数传不过去 
地址:http://localhost:1856/Shop/16/31/list_2.html  
参数传的是:id=16css%2fdeo.css

解决方案 »

  1.   

    ^~/Shop/(\d+)/(\d+)/list_(\d+).html
    =>^/Shop/(\d+)/(\d+)/list_(\d+).html
    试试
      

  2.   

    囧 你的aspx里有css样式是css/deo.css什么的吧
    你用了相对路径了对吧。
    然后其实请求的是这个
      

  3.   

    困扰好久了 这是所有规则
    <add name="Rule1" virtualUrl="^~/Shop/(\d+)/(\d+)/list_(\d+).html" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Shop/ShopList.aspx?id=$1&amp;sid=$2&amp;page=$3" ignoreCase="true"/>
    <add name="Rule2" virtualUrl="^~/Shop/(\d+)/list_(\d+).html" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Shop/ShopList.aspx?id=$1&amp;page=$2" ignoreCase="true"/> <add name="Rule3" virtualUrl="^~/Shop/(\d+)/(\d+)" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Shop/ShopList.aspx?id=$1&amp;sid=$2" ignoreCase="true"/>
    <add name="Rule4" virtualUrl="^~/Shop/(\d+)/" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Shop/ShopList.aspx?id=$1" ignoreCase="true"/>
    <add name="Rule5" virtualUrl="^~/Shop/" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Shop/Main.aspx" ignoreCase="true"/>
      

  4.   

    把你这个css改为绝对路径试试
      

  5.   

    ^~/Shop/(\d+)/
    规则后面加个$
      

  6.   

    我加在哪里呢?
    virtualUrl="^~/Shop/(\d+)$/(\d+)$/list_(\d+)$.html"
    这样吗?
      

  7.   

    <add name="Rule4" virtualUrl="^~/Shop/(\d+)/$" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Shop/ShopList.aspx?id=$1" ignoreCase="true"/>
      

  8.   

    是第2个/导致的
    参数是 ShopList.aspx?id=16&sid=31%2fpage=3
      

  9.   

    <add name="Rule3" virtualUrl="^~/Shop/(\d+)/(\d+)$" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Shop/ShopList.aspx?id=$1&amp;sid=$2" ignoreCase="true"/>我说 这些规则写的时候注意点严谨啊
      

  10.   

    是第2个/导致的
    参数是 ShopList.aspx?id=16&sid=31%2flist_2.html
    其实在上面的规则也遇到了这个问题
    <add name="Rule3" virtualUrl="^~/Shop/(\d+)/(\d+)" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/Shop/ShopList.aspx?id=$1&amp;sid=$2" ignoreCase="true"/>
    这个规则我就只能输入
    Shop/16/31
    输入Shop/16/31/
    也会有一个%2f传递过去