用server.Transfer(」")來實現一個空間多個站的方法
$ r7 Z4 Z2 M- z
" Q: x( X* c% z! R) i, F; p, p您先將您所有的域名綁定到您的虛擬主機上,然後將虛擬主機根目錄中的index.asp(首頁文件)裡加入下列代碼就可以了:4 N8 Q# r% k1 S' n
: f3 V; g& n m! v2 ] p5 b: H
<%
! I! w7 K7 C/ ^+ Bsn=lcase(Request.ServerVariables(」SERVER_NAME」)) 『用於獲取用戶是通過哪個域名訪問的,並轉換成小寫
- I# R. I% Z0 W% K' P! Cif sn=」www.abc.net」 or sn=」yuxicn.net」 then server.Transfer(」default1.asp」)- B. b/ x a) v; x C5 r
if sn=」www.def.net」 or sn=」zxks.net」 then server.Transfer(」index.html」)$ W3 ^' x2 Q/ \
%>
. u7 G5 X. m# A: l8 [( K; c
( R2 O" F8 ?% H2 y3 n
& r1 Y1 B6 F0 i4 y0 r7 v0 @看明白了吧,如果訪問者輸入的域名是www.abc.net或abc.net的話,就訪問default1.asp頁面,如果是用def.net或www.def.net的話就調用index.html文件。
' F& J+ r+ V# r% t: x ~. p; ?6 c4 L9 E
網上還有一些教程是讓您用response.redirect來實現轉向,但在這裡,我建議您使用server.Transfer(」")來實現這個功能,好處有以下幾個方面:
# o/ K9 j% _0 \$ d0 k* k
( o# G5 R# i( i% M, U, _* Q& h1、不會出現頁面跳轉,直接輸入網址後,網址後不會帶任何文件,訪問者不會看出你的兩個網站是放在同一虛擬主機上。+ L" `" V+ s3 w
2、server.Transfer(」")不會阻擋搜索引擎對你的網站的收錄,而response.redirect可不一定/ @0 v' ?( K4 L5 ~% n G5 F3 e
; {3 e; b0 p1 C5 L6 G方法二:(最方便管理,一個空間放的站越多越推薦,本人也經常這樣做。)& O1 q/ Z1 \. R8 T8 Y. j
4 s0 }; |( b0 T
我的方法是利用一個asp文件通過瀏覽器輸入的域名,判定他是要打開那個文件夾裡的站點,來實現一個虛擬放置多個站點(缺點例如打開abc.com,在瀏覽器中看到的是abc.com/b因為站點在b目錄下)/ | u, @- ?* X& t$ j4 r8 R
1 u _" g& _$ v
其他說明:如果虛擬主機不支持子目錄綁定,這是非常有效的辦法
# G: @* Z: z( j& h+ `: @. v" W* G8 r/ S8 Y
實現方法如下
! l2 |( Y: A+ U9 p- t9 J3 c& D/ z! q) e1 A& e6 k
可以這樣,你先建立一個默認主頁index.asp
/ m j( V: H, z然後把A站放在A文件夾下
9 A: S7 A- U2 [/ x( ^) L& r) aB站放在B文件夾下
: [+ ~' Q* p1 \! [& D* tC站放在C文件夾下
" E$ |2 F; y" X6 m& a0 E
2 N2 B9 w8 h" Uindex.asp網頁文件如下2 U1 K5 s# {* `' e
4 ]; _' B; f2 k2 i<%if Request.ServerVariables(」SERVER_NAME」)=」www.a.com 」 then. N; U0 M/ i) U" ^ x# \
response.redirect 「a/index.asp」8 v7 l" z" p! F. \+ Z: A0 b* n
elseif Request.ServerVariables(」SERVER_NAME」)=」www.b.com 」 then
: Y' J9 c1 d/ Q9 ]2 Q( e8 uresponse.redirect 「b/index.asp」9 ~; I4 O- K7 y: Z- ^ U% v
elseif Request.ServerVariables(」SERVER_NAME」)=」www.c.com 」 then1 ]; S1 o8 M/ O8 s4 u
response.redirect 「c/index.asp」
( Q( d/ @3 Z5 pelse% _/ m+ u8 y9 [+ J- b2 M( z
response.redirect 「aaa/index.asp」) X( y! q/ H2 [* K. ^& \5 _
end if%>0 b, _$ t4 w J( {- U' q _
2 P; ~( ~0 u' Q1 b1 K1 B/ ?
如果用戶訪問 www.a.com 程序跳轉至 空間目錄下 a/index.asp6 q; M4 ^( y2 ]3 c- `* {
如果用戶訪問 www.b.com 程序跳轉至 空間目錄下 b/index.asp
& y4 u; f, E, j" t; J* { K如果用戶訪問 www.c.com 程序跳轉至 空間目錄下 c/index.asp
/ V+ N# m) Y7 `2 W5 V8 F) k$ G如果用戶訪問 沒有指定的 程序跳轉至 空間目錄下 aaa/index.asp
, Y- C) |0 p# E) ~3 K( s# i2 h/ T2 A0 z0 j4 S
怎麼樣,簡單吧。
# d: Y4 F. M- n+ d
" O8 g a. x6 u% k- }5 ^2 }( helseif Request.ServerVariables(」SERVER_NAME」)=」www.b.com 」 then5 r6 N* q1 R% e9 a% c. U" j/ a
response.redirect 「b/index.asp」4 j9 a0 ?% I! J, ]
0 R; m; k6 H: D* B! O/ H% `' n. H這段是可以無限複製的哦,一個虛擬主機放幾百個站點就是你自己設置的了) z% F7 g" s5 y% e! l; ~
只要把域名都綁定在你的虛擬主機上,然後設置這個域名所綁定的站點就OK了* D& K1 a. o& ]/ _
7 K% u1 F. I3 a9 c4 P& o9 k( P這種要看你的虛擬主機能綁多少個玉米。能綁100個的話就能放100個站,並且利於網站管理,這樣做可以根據文件夾名,就知道這個是哪個站* r) I* d1 X* v6 y
: F9 h8 ~+ i9 j來源:http://dingzong88.cn/2009/05/one-space-multi-site/ |
|