用server.Transfer(」")來實現一個空間多個站的方法7 c# ~: n# i, c5 {$ T2 s2 r! Y- v4 y
9 v% A) N7 }' l2 z4 T& k% r' k. _您先將您所有的域名綁定到您的虛擬主機上,然後將虛擬主機根目錄中的index.asp(首頁文件)裡加入下列代碼就可以了: Y+ Z: K- l+ p3 o4 f2 r0 J U+ H
5 W( W$ H/ |: C6 P+ J# _! J<%' `1 }5 F+ u$ H' H6 b7 u" {' E
sn=lcase(Request.ServerVariables(」SERVER_NAME」)) 『用於獲取用戶是通過哪個域名訪問的,並轉換成小寫6 ]% U/ G- {9 U: V$ G- x
if sn=」www.abc.net」 or sn=」yuxicn.net」 then server.Transfer(」default1.asp」)6 o- W0 Z! t u5 V& f T9 l+ E
if sn=」www.def.net」 or sn=」zxks.net」 then server.Transfer(」index.html」)5 l' O! D4 G8 U/ e: H$ {
%>6 a# ^! [ d+ o3 p
4 M& k2 A! M2 T* [3 O
5 Z8 V: Z+ z( o4 u8 f看明白了吧,如果訪問者輸入的域名是www.abc.net或abc.net的話,就訪問default1.asp頁面,如果是用def.net或www.def.net的話就調用index.html文件。- Q0 |& |8 `2 a( R$ W" e7 l4 I
3 o, `. p- U; B) F# n
網上還有一些教程是讓您用response.redirect來實現轉向,但在這裡,我建議您使用server.Transfer(」")來實現這個功能,好處有以下幾個方面:
) ]* Z' d% e0 A' S3 s& u: l; ]5 r8 p' K6 R* i9 j9 Q5 r$ s4 w& M
1、不會出現頁面跳轉,直接輸入網址後,網址後不會帶任何文件,訪問者不會看出你的兩個網站是放在同一虛擬主機上。+ u2 E2 m. e- A6 h, x& [
2、server.Transfer(」")不會阻擋搜索引擎對你的網站的收錄,而response.redirect可不一定
6 a8 |0 e k% h) `& a' H/ {. H9 L% H. W: T# q
方法二:(最方便管理,一個空間放的站越多越推薦,本人也經常這樣做。) V2 l O/ H7 k ] {
! \/ k8 m- W4 H4 T% g
我的方法是利用一個asp文件通過瀏覽器輸入的域名,判定他是要打開那個文件夾裡的站點,來實現一個虛擬放置多個站點(缺點例如打開abc.com,在瀏覽器中看到的是abc.com/b因為站點在b目錄下)
0 ^4 g& b' E1 m' Y1 U T1 q) h9 Y9 k: V+ f @9 u; i
其他說明:如果虛擬主機不支持子目錄綁定,這是非常有效的辦法
. g" n+ b( Q& A- H4 z
) s( G8 e; y% ^實現方法如下. ?: F8 D7 I' u( L' Z
5 V! n1 c$ v9 Q0 @) W0 T可以這樣,你先建立一個默認主頁index.asp! B+ s& V4 x- z& [8 l1 k4 m
然後把A站放在A文件夾下/ s7 V% i$ j$ l# u9 N3 j% I
B站放在B文件夾下
) L* u6 T2 @2 j2 V; dC站放在C文件夾下+ U! M1 |. U6 q; J) J
6 |7 k `4 h; s& k& X
index.asp網頁文件如下% ]8 z9 I7 } m; O" R
& G2 U, O1 `: |4 c( ]# g3 {<%if Request.ServerVariables(」SERVER_NAME」)=」www.a.com 」 then( R5 `/ e+ z) u
response.redirect 「a/index.asp」
h* w1 B+ L+ w6 i: X0 s( B2 aelseif Request.ServerVariables(」SERVER_NAME」)=」www.b.com 」 then0 }, W3 Q9 N3 e0 D- Q
response.redirect 「b/index.asp」% K- h5 ?! j# o' p
elseif Request.ServerVariables(」SERVER_NAME」)=」www.c.com 」 then
6 Q2 R. l, Q! v2 l- c/ U: {# Jresponse.redirect 「c/index.asp」# F. x6 V; z- B9 W! [9 m" J/ F
else
`! n6 w. Z4 Q7 Yresponse.redirect 「aaa/index.asp」2 ^+ A( u! k% c
end if%>) d/ q2 d8 L8 f3 {$ Y
0 H4 E+ D: j6 I( B, F, \; \如果用戶訪問 www.a.com 程序跳轉至 空間目錄下 a/index.asp5 n) e: I$ M9 f5 R5 c
如果用戶訪問 www.b.com 程序跳轉至 空間目錄下 b/index.asp
/ o) P* _6 z+ I" a如果用戶訪問 www.c.com 程序跳轉至 空間目錄下 c/index.asp2 W5 G; Z6 Q4 P/ o
如果用戶訪問 沒有指定的 程序跳轉至 空間目錄下 aaa/index.asp0 h: O; g2 x+ N6 P/ |
6 _* g( Z- h& y% S怎麼樣,簡單吧。
3 u3 m9 C7 j- U* `* @+ A# C& F2 H6 ?% |& F- d9 @% [
elseif Request.ServerVariables(」SERVER_NAME」)=」www.b.com 」 then# S! h( J$ U$ S- m1 e
response.redirect 「b/index.asp」/ t* i. C% z3 P% ]1 @
7 Q; n! m8 ^7 K, m2 B; k* O* K這段是可以無限複製的哦,一個虛擬主機放幾百個站點就是你自己設置的了9 Y$ r3 m3 e$ M4 z: T
只要把域名都綁定在你的虛擬主機上,然後設置這個域名所綁定的站點就OK了' c& k7 E8 R* K& i
/ }+ l1 }) i8 W+ z' P' U
這種要看你的虛擬主機能綁多少個玉米。能綁100個的話就能放100個站,並且利於網站管理,這樣做可以根據文件夾名,就知道這個是哪個站- e1 i: [+ F `3 |4 Y3 ]
8 R, ^: N* i8 O8 @9 h來源:http://dingzong88.cn/2009/05/one-space-multi-site/ |
|