本文版权归学IT网()所有,任何单位与个人转载必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
本文基本ASP.NET技术,重写URL不需要IIS设置。
本教程目的,利用UrlRewriter重写组件来重写URL地址,来达到SEO,隐藏URL参数。
首先下载UrlRewriter
下载地址:
下面以一个简单的实例来做应用:
第一、把下载好的Intelligencia.UrlRewriter.dll文件放到程序目录bin
再到vs.net项目中添加Intelligencia.UrlRewriter.dll文件引用
第二、新建一个index.aspx文件
index.aspx.cs内容如下:
protected void Page_Load(object sender, EventArgs e)
{
Response.Write(Request["pid"]);
}
也就是说输出参数pid的内容
第三、配置Web.config文件
内容如下:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<!--设置地址重写组件-->
<configSections>
<section name="rewriter" requirePermission="false" type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter"/>
</configSections>
<!--地址重写规则文件-->
<rewriter file="~/App_Data/rewrite.xml"/>
<appSettings/>
<connectionStrings/>
<system.web>
<compilation debug="false">
</compilation>
<authentication mode="Windows" />
<!--httpModules-->
<httpModules>
<add type="Intelligencia.UrlRewriter.RewriterHttpModule,Intelligencia.UrlRewriter" name="UrlRewriter" />
</httpModules>
</system.web>
</configuration>
第四、开始实例应用
第一种效果实验:
正常访问::4412/index.aspx?pid=hao
重写URL为::4412/index_hao.aspx
重写规则文件rewrite.xml内容如下:
<?xml version="1.0" encoding="utf-8" ?>
<rewriter>
<!-- ([a-zA-Z]+) 只允许英文 -->
<rewrite url="~/index_([a-zA-Z]+).aspx$" to="~/index.aspx?pid=$1" processing="stop" />
</rewriter>
原访问效果图:
重写效果图:
第二种效果实验:
正常访问::4412/index.aspx?pid=hao
重写URL为::4412/index/任意字符.aspx
重写规则文件rewrite.xml内容如下:
<?xml version="1.0" encoding="utf-8" ?>
<rewriter>
<!-- ([a-zA-Z]+) 只允许英文 -->
<rewrite url="~/index_([a-zA-Z]+).aspx$" to="~/index.aspx?pid=$1" processing="stop" />
<!-- (.*)任意字符 -->
<rewrite url="~/index/(.*)\.aspx$" to="~/index.aspx?pid=$1" />
</rewriter>
效果图如下:
实验成功,是不是很简单呢!!欢迎多多交流,学it网会出更多原创作品。