Asp.net 重写器不工作

Asp.net 重写器不工作,asp.net,regex,mod-rewrite,Asp.net,Regex,Mod Rewrite,我有一个网站与一些子域。为了重写,我在web.config中使用了这段代码 <if header="HTTP_HOST" match="^(?:www\.)?([^.]+)\.([^.]+)\.([^.]+)$"> <set property="subdomain" value="$1"/> <set property="domain" value="$2"/> <set property="tld" value="$3"/

我有一个网站与一些子域。为了重写,我在web.config中使用了这段代码

<if header="HTTP_HOST" match="^(?:www\.)?([^.]+)\.([^.]+)\.([^.]+)$"> 
    <set property="subdomain" value="$1"/> 
    <set property="domain" value="$2"/> 
    <set property="tld" value="$3"/> 
    <rewrite url="~/Default.aspx" to="~/userPage.aspx?pagename=${subdomain}&defaultpage=yes" processing="stop"/> 
    <!--<rewrite url="~/Default.aspx" to="~/Default.aspx" processing="stop"/>--> 
</if>

当我使用此地址测试网站时,一切都很好:

但当我想测试此地址时:


…重写不起作用。

你能不能把你所说的“不起作用”的意思扩大一点?对照一下
match
参数起作用的是什么?或者www.sub1.mysite.com?你能告诉我们重写器工作时包含哪些子域、域和tld属性吗?嗨,alex.sub1是动态的,用db读取。