首页 新闻 会员 周边 捐助

十万火急.....如何实现URL重写....

0
悬赏园豆:200 [已关闭问题]

URL重写在网上可以找到很多,但是没有一个是给例子的,那位高手发一份例子给我,或者详细说哈,万分感谢!

我的邮箱:zhangxinpingit@163.com

zhang12345的主页 zhang12345 | 初学一级 | 园豆:0
提问于:2009-06-13 09:15
< >
分享
其他回答(2)
0

不知道这个范例是否符合你要求:http://www.cnblogs.com/niuniu502/archive/2006/11/02/547862.html

MSDN也有范例:http://msdn.microsoft.com/zh-cn/library/cc668201.aspx

并附带一个英文视频:http://download.microsoft.com/download/f/d/5/fd543808-e31c-4e6c-b462-6f982cb3ebc7/HowTo-UseRoutingWebForms.wmv

斯克迪亚 | 园豆:4124 (老鸟四级) | 2009-06-13 10:47
0

1、配置web.config
  <system.web>
   <httpHandlers>
      <add verb="*" path="*/gbk/*" type="UrlRewriter" />
<!--意思是碰到URL里边待有gbk的目录,将由类UrlRewriter来进行重新解析-->
      <add verb="*" path="*/big5/*" type="UrlRewriter" />
    </httpHandlers>

2、app_code下建立类:
public class UrlRewriter : IHttpHandler
{
    #region IHttpHandler 成员

    public bool IsReusable
    {
        get { return false; }
    }

    public void ProcessRequest(HttpContext Context)
    {
        string _strUrl = Context.Request.Url.AbsoluteUri.ToLower();

        if (_strUrl.IndexOf("gbk") > -1 || _strUrl.IndexOf("big5") > -1)
        {
            string _strType = "gbk";

            if (_strUrl.IndexOf("big5") > -1)
            {
                _strType = "big5";
            }

            _strUrl = _strUrl.Replace("gbk/", "").Replace("big5/", "");

            if (_strType == "big5")
            {

      //TODO 这里还可以自定义进行一些转换,或者别的操作。

                    Context.Response.Status = "301 Moved Permanently";
                    Context.Response.AddHeader("Location", _strUrl);
            }
            else
            {
                Context.Response.Status = "301 Moved Permanently";
                Context.Response.AddHeader("Location", _strUrl);
            }
        }
        else
        {
            Context.Response.Status = "301 Moved Permanently";
            Context.Response.AddHeader("Location", _strUrl);
        }
    }  

    #endregion
}

蠕虫 | 园豆:305 (菜鸟二级) | 2009-06-13 11:18
0

URL重写地址重写的组件很多呀而且名字也很容易混淆,我一般使用UrlRewriter.NET

 到这里下载示例:UrlRewriter.NET地址重写示例程序3阶段

 UrlRewriter.NET的中文网站:http://www.urlrewriter.cn/

 如果你想深入了解的话你可以阅读 JeffreyZhao 重提URL Rewrite

MicroCoder | 园豆:554 (小虾三级) | 2009-06-13 13:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册