用server.Transfer(」")來實現一個空間多個站的方法5 Y1 ?- y) k" M8 g- O' E! Z. p
3 d5 \* R& O. Q% y' ~- X您先將您所有的域名綁定到您的虛擬主機上,然後將虛擬主機根目錄中的index.asp(首頁文件)裡加入下列代碼就可以了:
' l' `" I: t: H2 `# E! j
q7 t! O' t' J5 N7 V( b<%( j" i* H6 R8 t7 H. Z; D
sn=lcase(Request.ServerVariables(」SERVER_NAME」)) 『用於獲取用戶是通過哪個域名訪問的,並轉換成小寫
! ~, e( D V7 w$ }' Uif sn=」www.abc.net」 or sn=」yuxicn.net」 then server.Transfer(」default1.asp」)4 @+ e# ?, S D& t/ `# \
if sn=」www.def.net」 or sn=」zxks.net」 then server.Transfer(」index.html」)
4 ~& V% \" ~4 F" R, Y* Q%>
8 U2 P0 K; ?/ l0 v
3 Z" O, w* t& Z3 q* b% h$ Z" } S O& \+ l& w& B
看明白了吧,如果訪問者輸入的域名是www.abc.net或abc.net的話,就訪問default1.asp頁面,如果是用def.net或www.def.net的話就調用index.html文件。
7 M/ r2 a0 L& o/ y4 h$ D$ `' {7 ? A3 `7 V. s- C' V
網上還有一些教程是讓您用response.redirect來實現轉向,但在這裡,我建議您使用server.Transfer(」")來實現這個功能,好處有以下幾個方面:
0 f5 [6 M* k/ Y' y: z# j
7 j( x; O: \$ ^ J7 i; C# w- l1、不會出現頁面跳轉,直接輸入網址後,網址後不會帶任何文件,訪問者不會看出你的兩個網站是放在同一虛擬主機上。- B2 P! v+ u4 c+ u1 t7 s
2、server.Transfer(」")不會阻擋搜索引擎對你的網站的收錄,而response.redirect可不一定: b8 b: v5 R/ N8 l
O1 V* |$ T F' R" v; F
方法二:(最方便管理,一個空間放的站越多越推薦,本人也經常這樣做。)4 H; r6 @ L4 Q- \/ Q
5 i2 P2 q! w+ z) S. o4 t" Z我的方法是利用一個asp文件通過瀏覽器輸入的域名,判定他是要打開那個文件夾裡的站點,來實現一個虛擬放置多個站點(缺點例如打開abc.com,在瀏覽器中看到的是abc.com/b因為站點在b目錄下)1 v" [8 J4 P; `# Z
- [# [ v& T* Z# m其他說明:如果虛擬主機不支持子目錄綁定,這是非常有效的辦法
- V9 F; z& T" n+ B
' O8 Q3 r4 K- L4 c& B% V% S! M# y& \實現方法如下
0 x8 j& u# \# E1 E! I. b$ o
2 O- L& Q- i3 d2 w可以這樣,你先建立一個默認主頁index.asp& `* ]0 h5 [) P4 D* j/ d q
然後把A站放在A文件夾下, W, B& `6 h4 _' h8 S) }- W% \
B站放在B文件夾下
6 n# w& p( W mC站放在C文件夾下- w, P" k5 I7 x3 E5 n5 a
1 N8 S4 ~. W2 o/ u/ yindex.asp網頁文件如下4 S+ P2 Z) B: C9 _! T2 \/ y
: P: e% y' O" s, U
<%if Request.ServerVariables(」SERVER_NAME」)=」www.a.com 」 then* w5 o5 T2 G4 O1 \( o$ [
response.redirect 「a/index.asp」
+ t. h J5 b8 Velseif Request.ServerVariables(」SERVER_NAME」)=」www.b.com 」 then# h4 a7 n. i% f& T( {
response.redirect 「b/index.asp」
1 O6 s% G& g; q/ H+ O+ i( \elseif Request.ServerVariables(」SERVER_NAME」)=」www.c.com 」 then1 x4 s2 e5 s% Y& }( K9 A
response.redirect 「c/index.asp」
6 f6 a: W( L. n; ~ R0 ^else7 a5 t# x) ~' k3 U; c8 T4 g; S# D6 n+ S0 }
response.redirect 「aaa/index.asp」. M9 I8 c. {3 d( u g( K
end if%>
3 f5 c6 c7 j; _
) p" m5 g7 i; t# E/ `& c如果用戶訪問 www.a.com 程序跳轉至 空間目錄下 a/index.asp- F9 E- ?2 C" E. g& t4 M5 `
如果用戶訪問 www.b.com 程序跳轉至 空間目錄下 b/index.asp
' Y) P. z1 K! G" t如果用戶訪問 www.c.com 程序跳轉至 空間目錄下 c/index.asp- o2 k- ]( f( L, ~' I
如果用戶訪問 沒有指定的 程序跳轉至 空間目錄下 aaa/index.asp
2 ]+ `, [( f Q# _# S8 E
8 J% X) P- J! c怎麼樣,簡單吧。: J t- E( k: y. L
# t; V; a* x& r4 g; J& T
elseif Request.ServerVariables(」SERVER_NAME」)=」www.b.com 」 then
6 |6 o$ M2 ~/ X2 k5 _- i! fresponse.redirect 「b/index.asp」
. G; H' s2 K8 n4 a) S! C$ B3 X
. f; p6 E! t d. {- i; Z% K3 A這段是可以無限複製的哦,一個虛擬主機放幾百個站點就是你自己設置的了: v& K% x0 ~: j6 s* V9 z
只要把域名都綁定在你的虛擬主機上,然後設置這個域名所綁定的站點就OK了, }; S: Z1 [' I7 v
: F2 p5 ~+ O( r+ F& G這種要看你的虛擬主機能綁多少個玉米。能綁100個的話就能放100個站,並且利於網站管理,這樣做可以根據文件夾名,就知道這個是哪個站! d: t9 d4 P' }! z2 x
6 x3 }" t6 e) z1 I$ t$ Z( \6 }
來源:http://dingzong88.cn/2009/05/one-space-multi-site/ |
|