ASP.NET 制作让搜索引擎可以友好访问的链接

今天看了一篇文章,主要是讲,如何制作让搜索引擎可以友好访问的链接,大概的内容是这样的:很多的时候我们在进行查询的时候,总是会以这样的链接方式传递参数:
http://www.yoursite.com/query.aspx?typeid=2
这个链接大家看得很明白,就是我希望查看typeid=2的相关记录的信息。
 
但是这有个问题就是,搜索引擎的spider进行URL解析困难,因为它不太会理解这种带有参数的方式。
如果希望,每个typeid所对应的数据库查询的结果都能够被搜索引擎轻易的进行收录,我们或许需要写成这样的连接方式。
http://www.yoursite.com/pagetype1.aspx
http://www.yoursite.com/pagetype2.aspx
依次类推。
按照通常的想法,这就需要写n个这样的页面了,相当的繁琐。
 
不过在ASP.NET中,可以利用Application的BeginRequest的事件进行URL的转换[将静态的页面url的形式转换为带参数的动态页面url],就可以轻易的解决这样的问题了。请看如下的代码:
protected void Application_BeginRequest(object sender, EventArgs e)
{
       HttpContext incoming = HttpContext.Current;
       string oldpath = incoming.Request.Path.ToLower();
       string pageid; // page id requested
 
       //利用正则表达式对url进行解析
       Regex regex = new Regex(@"page(/d+).aspx", RegexOptions.IgnoreCase |
                RegexOptions.IgnorePatternWhitespace);
       MatchCollection matches = regex.Matches(oldpath);
 
       if(matches.Count > 0) 
       {
                //如果满足条件,则进行改写,生成相应的带参数的url方式。
                pageid = matches[0].Groups[1].ToString();           
                incoming.RewritePath("Process.aspx?pageid=" + pageid);
       }
       
}
 
接下来就是需要做一个对应的动态页面了。
<%
       string pageid = Request.QueryString["pageid"];
       // Create the page content based on this pageid taken here
%>
 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值