用server.Transfer(」")來實現一個空間多個站的方法; Y, f d2 F# N; A6 Y
% G2 l1 G2 n! K
您先將您所有的域名綁定到您的虛擬主機上,然後將虛擬主機根目錄中的index.asp(首頁文件)裡加入下列代碼就可以了:$ k; D$ s( @0 x! l) \7 D
0 L6 F! N3 i+ h- a: ~% p+ }<%& x% X& m& Q' `! Y6 e `' I: h
sn=lcase(Request.ServerVariables(」SERVER_NAME」)) 『用於獲取用戶是通過哪個域名訪問的,並轉換成小寫
% z2 M* m/ w/ O. g* gif sn=」www.abc.net」 or sn=」yuxicn.net」 then server.Transfer(」default1.asp」)
& `8 W6 h5 |# N. B$ M9 ?if sn=」www.def.net」 or sn=」zxks.net」 then server.Transfer(」index.html」)
1 R9 R3 K) ~1 M( ^: T& [2 `%>
9 ~9 v2 ?! ^. y* \2 h {
0 Y5 n0 s) c: J# A- n" j
1 M7 \, w8 g9 T1 y2 w- i2 }看明白了吧,如果訪問者輸入的域名是www.abc.net或abc.net的話,就訪問default1.asp頁面,如果是用def.net或www.def.net的話就調用index.html文件。6 z9 \' U8 M: A! _9 ~
/ M$ c8 q' {% S1 M' h網上還有一些教程是讓您用response.redirect來實現轉向,但在這裡,我建議您使用server.Transfer(」")來實現這個功能,好處有以下幾個方面:
( ] u P4 W' R" a7 Z: W+ H
/ @; v! [2 A$ R) n) Y# U2 |1、不會出現頁面跳轉,直接輸入網址後,網址後不會帶任何文件,訪問者不會看出你的兩個網站是放在同一虛擬主機上。) t; R8 \- Z, l# l# S$ q! N) {
2、server.Transfer(」")不會阻擋搜索引擎對你的網站的收錄,而response.redirect可不一定
+ P) A7 H' y1 M4 }& V2 P2 z7 X q
: Q1 D1 ` i5 Y8 l方法二:(最方便管理,一個空間放的站越多越推薦,本人也經常這樣做。)
3 X0 d ~, M! {4 R; s8 m4 X+ P5 _+ V, o2 Q- v2 I
我的方法是利用一個asp文件通過瀏覽器輸入的域名,判定他是要打開那個文件夾裡的站點,來實現一個虛擬放置多個站點(缺點例如打開abc.com,在瀏覽器中看到的是abc.com/b因為站點在b目錄下). l! e7 [7 A2 b+ q* f! j
i8 G$ q9 C2 a4 L$ C/ n2 _$ ^
其他說明:如果虛擬主機不支持子目錄綁定,這是非常有效的辦法" W3 v X3 a8 \
& f' X' m( X3 Y+ \1 R# S* g9 [
實現方法如下
# ]6 `( r, I$ ~! ~2 U. x7 K; t5 u/ b( l' Q( f% O
可以這樣,你先建立一個默認主頁index.asp
- b5 Y: t" X& s. J7 s然後把A站放在A文件夾下
~- h# O6 b- F' ~/ @8 _B站放在B文件夾下
6 f c$ s$ b! \ z8 @C站放在C文件夾下
' m4 K9 j2 ?) x% P3 ~
; O# e0 \4 f& E* j+ h' n- V! bindex.asp網頁文件如下
; I* q4 m5 H ]( x7 C% X7 @4 N/ P8 h' |2 D1 d2 n! W& {" m
<%if Request.ServerVariables(」SERVER_NAME」)=」www.a.com 」 then
5 O, Q4 e9 Y! ]4 a( s6 Gresponse.redirect 「a/index.asp」! E1 R+ Z% l( p/ H+ c2 z
elseif Request.ServerVariables(」SERVER_NAME」)=」www.b.com 」 then* e9 I0 c/ _- W4 u- a- i# h1 w+ A0 d
response.redirect 「b/index.asp」
7 ?8 y" `6 B9 t8 E2 Jelseif Request.ServerVariables(」SERVER_NAME」)=」www.c.com 」 then
' X; [# N) J) M. ?response.redirect 「c/index.asp」* @4 Z' H/ Q8 ^) c' M
else
+ A, ?! F+ U9 H7 i; b; wresponse.redirect 「aaa/index.asp」
# r+ ^# m. C) D- I. [+ `end if%>
! }" `$ V" d% k+ s5 X4 N9 u0 k6 Z, C! Y, ^( e
如果用戶訪問 www.a.com 程序跳轉至 空間目錄下 a/index.asp
1 b* @2 e5 x+ m7 C如果用戶訪問 www.b.com 程序跳轉至 空間目錄下 b/index.asp
9 ]2 ^! S$ _: T# n* n2 v如果用戶訪問 www.c.com 程序跳轉至 空間目錄下 c/index.asp8 i6 A6 A7 q/ K/ X) U* m8 C
如果用戶訪問 沒有指定的 程序跳轉至 空間目錄下 aaa/index.asp
. e0 ?# ~4 k4 b+ a6 `; y: E% w& K" o3 n; ~3 j5 \# U6 m
怎麼樣,簡單吧。2 F9 v* M8 i( E
2 k8 ]! m+ s( P; K" I$ C
elseif Request.ServerVariables(」SERVER_NAME」)=」www.b.com 」 then
. z) C7 n; G( l6 ?3 c+ c, presponse.redirect 「b/index.asp」, a- ]% x3 \+ Q+ O8 N
' a# P* ]' W3 a2 M
這段是可以無限複製的哦,一個虛擬主機放幾百個站點就是你自己設置的了0 m4 n( A' ~+ E# F
只要把域名都綁定在你的虛擬主機上,然後設置這個域名所綁定的站點就OK了
# u* K1 o: n3 S; E$ Z. ?1 g0 X2 Z+ X+ H- R- S% a# y: M6 ^; S2 t+ z
這種要看你的虛擬主機能綁多少個玉米。能綁100個的話就能放100個站,並且利於網站管理,這樣做可以根據文件夾名,就知道這個是哪個站
2 I7 ?/ q3 r( I2 H8 k X" q+ z0 r' H9 ^; a2 m2 g
來源:http://dingzong88.cn/2009/05/one-space-multi-site/ |
|