二级或二级以上域名 和 目录以及后缀同时重写.
在这里代码我就不作解释了,下载代码自己研究吧(有注释).
原代码在文章末尾提供下载.
1.域名解析问题
请确定你的域名是支持泛解析的。然后你的网站为默认网站,否则将不能实现。图1
2.IIS配置:在IIS\你的站点\属性\主目录\配置\映谢 在通配符应用程序配置处插入一个新的映射。
把可执行文件设为和上面ASPX页面同样的配置即可(注意不要勾选 “确定文件是否存在”)。
图2
图3
3.查看你的网站主机头,里面的第一个主机头值必须为空,否则会出现错误的请求。后面随你加.
图4
4. Web.Config 配置
1
<system.web>
2
<httpModules >
3
<add type="Qiaozw.UrlRewrite.ModuleRewriter,Qiaozw.UrlRewrite" name="ModuleRewriter"/>
4
</httpModules>
5
</system.web>
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5.最后配置 /config/URLRewrit.config 文件。
重写配置--样例:
1
<RewriterConfig>
2
<RewriterRule>
3
<LookFor>http://www.域名.com</LookFor> 主域名定位
4
<SendTo>/default.aspx</SendTo>
5
</RewriterRule>
6![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
<RewriterRule>
8
<LookFor>域名.com</LookFor> 主域名定位
9
<SendTo>/default.aspx</SendTo>
10
</RewriterRule>
11![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
12
<RewriterRule>
13
<LookFor>http://域名.com</LookFor> 主域名定位
14
<SendTo>/default.aspx</SendTo>
15
</RewriterRule>
16![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
<RewriterRule>
18
<LookFor>http://([\a-zA-Z0-9]{4,10}).域名.com/(\d{1,5})</LookFor> 二级域名与目录同时重写. 注:多级域名重写修改正则表达式
19
<SendTo>/test/test.aspx?domain=$1&path=$2</SendTo>
20
</RewriterRule>
21
22
<RewriterRule>
23
<LookFor>http://([\a-zA-Z0-9]{4,10}).域名.com/(\d{1,5})/(\d{1,5}).html</LookFor> 二级域名与目录以及后缀同时重写. 注:多级域名重写修改正则表达式
24
<SendTo>/test/test.aspx?domain=$1&path=$2&path1=$3</SendTo>
25
</RewriterRule>
26![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
27
<RewriterRule>
28
<LookFor>/([0-9]{1,5})</LookFor> 目录重写
29
<SendTo>/test/test.aspx?path=$1</SendTo>
30
</RewriterRule>
31![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
32
<RewriterRule>
33
<LookFor>/([a-z]{1,5})</LookFor> 目录重写
34
<SendTo>/test1/test1.aspx?path=$1</SendTo>
35
</RewriterRule>
36
37
<RewriterRule>
38
<LookFor>/([a-z]{1,5})/([0-9]{1,5}).html</LookFor> 目录和及后缀同时重写
39
<SendTo>/test1/test1.aspx?path=$1&path=$2</SendTo>
40
</RewriterRule>
41
</RewriterConfig>
42![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
28
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
29
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
33
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
34
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
35
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
36
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
37
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
38
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
39
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
40
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
41
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
42
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
如要修改配置文件路径,请在 RewriterConfig.cs >>RewriterConfiguration.GetConfig() 里修改
另外在这里请教下个位谁知道这是什么原因, 有哪位高手知道?
1
try
2
{
3
//此处二级域名重写错误 出现未将对象引用设置到对象的实例的异常
4
//注:一下参数正常
5
context.RewritePath(sendToUrlLessQString, string.Empty, queryString);
6
}
7
catch (Exception e)
8
{
9
context.RewritePath(sendToUrl); //异常后再次重写便重写成功. (原因不明)
10
}
11
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
代码下载: 二级重写UrlRewrite.rar
不算完全原创也算我的劳动成果吧.
转载请注明出处:http://www.cnblogs.com/cn795/archive/2009/09/03/1559902.html
作者:黑白之间
主页: http://cn795.cnblogs.com/