论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Asp.net教程
Tag:静态页面,treeview,gridview,repeater,dataset,sqldatareader,ado.net,上传,三层,ajax,xml,留言本,新闻发布,商城,注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,触发器,socket,form认证,登录,视频教程

让你的ASP.NET虚拟主机也支持子网站

文章类别:Asp.net | 发表日期:2008-10-5 22:07:19

    现在ASP.NET虚拟主机一般都可以绑定多个域名,但是通过这几个域名打开的页面都一样。如何使绑的这几个域名分别打开不通的页面(即实现子网站的功能)呢? 其实很简单,只需4个步骤:
    1)给虚拟主机绑定几个域名;例如:www.abc.com,services.abc.com,support.abc.com。
    2)在虚拟主机站点的根目录下建立几个文件夹;例如:services,support;www文件夹就不要建了。
    3)在vs 2005 Web项目下,建立同样的几个文件夹,每个文件夹下添加一个default.aspx文件;例如:services,support。
    4)在 Global.asax 中添加 Application_BeginRequest 事件:                   protected void Application_BeginRequest(object sender, EventArgs e)
        {
            string sumDomain;
            string domain = Request.Url.Host;
            // http://localhost 可没有“.”啊
            int i = domain.IndexOf('.');
            if (i > 0)
            {
                // 取域名(例如,www.abc.com)第一个“.”之前的部分(不包括第一个“.”)
                sumDomain = domain.Substring(0, i);

                // 如果不是“www”,则自动转向到 http://www.abc.com/xxx,
                //   地址栏的URL,不会显示http://www.abc.com/xxx,而是显示http://xxx.abc.com
                if (sumDomain.IndexOf("www") == -1)
                {
                    // 注意,这一句是关键
                    HttpContext.Current.RewritePath("~/" + sumDomain + Request.Url.PathAndQuery);
                }
            }
        }
    怎么样,是不是很简单!  哈哈,这就是URL重写(HttpContext.Current.RewritePath)。

本文地址:http://www.cnblogs.com/anjou/archive/2006/12/23/601777.html

视频教程列表
文章教程搜索
 
Asp.net推荐教程
Asp.net热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058