URL重写 UrlRewrite

本文深入探讨了URL重写的重要性和好处,包括改善SEO、提升网站外观以及简化URL结构。通过实例展示了如何在ASP.NET应用中实现URL重写,以增强用户体验和搜索引擎抓取效率。

为什么要URL重写?

1、有利于SEO,带参数的URL权重较低;
2、地址看起来更正规,推广uid

伪静态:看起来像普通页面,而非动态生成的页面。
原理:在Global.asax的Application_BeginRequest 中读取Request.Url 得到请求的URL(View-3.aspx)
     然后用HttpContext.Current.RewritePath(ReWriteUrl)进行重写(也就是交由另外一个页面处理这个请求)(View.aspx?tid=3格式)
http://www.cnblogs.com/hd/archive/2005/06/20/177633.html
也可以使用微软的URLRewrite,只要修改配置文件就可以进行URL重写

案例:URL重写,将 view-3.aspx之类的重写成 view.aspx?id=3

1.View.aspx.cs的设计,lbmsg 是一个服务端Lab控件

string id =  Request["id"];
       if (id != null)
          {
              int val = Convert.ToInt32(id);
              switch (val)
              {
                  case 1:
                      lbmsg.Text = "第一名!就是你!";
                      break;
                  case 2:
                      lbmsg.Text = "第二是最好的!";
                      break;
                  case 3:
                      lbmsg.Text = "虽然你是第三,我相信你能成功!";
                      break;
                  default:
                      lbmsg.Text = "革命尚未成功!同志仍需努力!";
                      break;
              }
          }

2.Global.asax 设计

protected void Application_BeginRequest(object sender, EventArgs e)
    {
       Regex reg = new Regex(@".+View-(\d+).aspx");  //定义一个正则表达式,()可用于分组
       var match = reg.Match(HttpContext.Current.Request.Url.AbsolutePath); //匹配当前用户输入的URL路径
       if (match.Success) //判断是否匹配成功
        {
          string id = match.Groups[1].Value;         //得到第一组的值
          HttpContext.Current.RewritePath("View.aspx?id=" + id);  //将页面重定向,转交请求
        }
    }

 3. 当用户输入 View-3.aspx 时,自动当 View.aspx?id=3 的处理

 

转载于:https://www.cnblogs.com/xgao/p/4174255.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值