|
這里要求對域名進(jìn)行重寫,實現(xiàn)http://1234.abc.com/ 到 ~/Defa.ASPx?id=1234的重寫。
第一:域名
首先域名要支持泛解悉,就是域名解悉的主機(jī)名為星號*,例:*.abc.com。如下圖
這樣能保證你在瀏覽器地址欄輸入任何前綴,DNS都會把它們指向到你指定的IP地址上。
第二:IIS設(shè)置(Win2003 + IIS 6為例)
(1)網(wǎng)站必須為Web服務(wù)器的默認(rèn)站點(diǎn),即端口號為80,主機(jī)頭為空的站點(diǎn)。如下圖所示。
該站點(diǎn)接收所有對該服務(wù)器的HTTP請求(其它設(shè)置為主機(jī)頭的站點(diǎn)除外)。所以任何二級域名訪問該服務(wù)器都會由該站點(diǎn)進(jìn)行處理。
(2)另外要在站點(diǎn)的“通配符應(yīng)用程序映射”列表中添加ASP.NET的Web請求處理程序ASPNET_isapi.dll。如下圖所示。
在這里的設(shè)置,是讓該站點(diǎn)接到的所有請求都交給ASPNET_isapi.dll處理。
第三:修改Microsoft的URLRewriter。
運(yùn)行開源項目URLRewriter。這里需要修改兩個地方:
(1)BaseModuleRewriter.cs類
protected virtual void BaseModuleRewriter_AuthorizeRequest(object sender, EventArgs e)
{
HttpApplication app = (HttpApplication) sender;
//Rewrite(app.Request.Path, app);
Rewrite(app.Request.Url.AbsoluteUri, app); // ## ## ## 這里修改了
}
NET技術(shù):ASP.NET下用URLRewriter重寫二級域名,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。