程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 讓你的ASP.NET虛擬主機也支持子網站

讓你的ASP.NET虛擬主機也支持子網站

編輯:.NET實例教程
現在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)。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved