用server.Transfer(」")來實現一個空間多個站的方法
3 D# m* M; O7 J- A% L7 Y, E# G* F
您先將您所有的域名綁定到您的虛擬主機上,然後將虛擬主機根目錄中的index.asp(首頁文件)裡加入下列代碼就可以了:
4 p. }, f# o$ ^ f- g# \" T; C( r7 a2 K2 _0 [
<%
& m9 a U& p( M$ ^& B; t3 u# ]sn=lcase(Request.ServerVariables(」SERVER_NAME」)) 『用於獲取用戶是通過哪個域名訪問的,並轉換成小寫
7 S0 R* M9 ?0 H1 X4 Iif sn=」www.abc.net」 or sn=」yuxicn.net」 then server.Transfer(」default1.asp」): j7 s% s. R: U* E
if sn=」www.def.net」 or sn=」zxks.net」 then server.Transfer(」index.html」)- F) Q+ Q; a. k. {, A! F
%>
4 i5 \. T6 }: l$ p$ L$ V/ w7 ]0 d4 x R
* t. }, G1 K& |看明白了吧,如果訪問者輸入的域名是www.abc.net或abc.net的話,就訪問default1.asp頁面,如果是用def.net或www.def.net的話就調用index.html文件。
8 w3 t' {% k4 r [% A8 n1 v0 P& q
& Z, O0 Z1 L9 _5 |8 b+ j) b' F網上還有一些教程是讓您用response.redirect來實現轉向,但在這裡,我建議您使用server.Transfer(」")來實現這個功能,好處有以下幾個方面:, p @& {0 j7 a+ |
7 U! a* t- J- N6 g. e) N$ ]% k; ?
1、不會出現頁面跳轉,直接輸入網址後,網址後不會帶任何文件,訪問者不會看出你的兩個網站是放在同一虛擬主機上。
) d* F5 N, I6 T0 | W) h+ c2、server.Transfer(」")不會阻擋搜索引擎對你的網站的收錄,而response.redirect可不一定
% B( Z0 d# H$ H2 ^5 ]) f; P G* Y2 V6 \" n9 [; R& H: z
方法二:(最方便管理,一個空間放的站越多越推薦,本人也經常這樣做。)
) f9 A9 @; n5 b) Z$ |9 c5 V
) Q8 q. S+ n7 W7 V& p我的方法是利用一個asp文件通過瀏覽器輸入的域名,判定他是要打開那個文件夾裡的站點,來實現一個虛擬放置多個站點(缺點例如打開abc.com,在瀏覽器中看到的是abc.com/b因為站點在b目錄下)
4 C8 e. Y' [- Y( i; L: W
9 q( l- g+ ^9 _& D2 ?其他說明:如果虛擬主機不支持子目錄綁定,這是非常有效的辦法
3 ]/ R9 q9 b" I/ j3 d1 r7 i$ o8 `# T/ ~8 j
實現方法如下
' q) p; \: K# a# e- H5 f. i Z
' O+ c7 t0 p3 S& M' c可以這樣,你先建立一個默認主頁index.asp" ?: y+ d0 q7 ?
然後把A站放在A文件夾下. q0 N3 Y8 o0 r' H
B站放在B文件夾下
+ h/ n6 A* b$ t P) nC站放在C文件夾下
7 }( z, v9 z+ I' C) O
, b5 ]2 z: [& T- p2 ^5 nindex.asp網頁文件如下' m9 l" ]! ?& h8 V4 b& c
+ M0 z* j, \- M; h3 A<%if Request.ServerVariables(」SERVER_NAME」)=」www.a.com 」 then3 B' Z2 B' w; C( t* [( S6 _- G
response.redirect 「a/index.asp」
; Z# [1 C2 l$ ?elseif Request.ServerVariables(」SERVER_NAME」)=」www.b.com 」 then
+ Y3 ~0 a' G" }- {9 q) v2 c* q5 K9 xresponse.redirect 「b/index.asp」
2 @! X) k" E$ L) A- C2 J3 S+ Felseif Request.ServerVariables(」SERVER_NAME」)=」www.c.com 」 then( p/ P# |" K; e" @" N2 J
response.redirect 「c/index.asp」
( l& A( ]* ^; H" F5 c& pelse5 [7 P# ^3 ?1 w1 C. E3 n
response.redirect 「aaa/index.asp」
* x1 D( k3 f3 w3 y; l" dend if%>
H6 f! T4 S2 D+ ]# t' k% i* e4 T$ R7 [ o: B9 n0 T' E6 p+ A/ a/ R0 X2 v
如果用戶訪問 www.a.com 程序跳轉至 空間目錄下 a/index.asp- t) z1 Z2 q, L# R) v5 j! O
如果用戶訪問 www.b.com 程序跳轉至 空間目錄下 b/index.asp' Q3 n6 N+ T3 N. [- p% j/ d5 P x
如果用戶訪問 www.c.com 程序跳轉至 空間目錄下 c/index.asp( A2 h0 d' R6 K' n }% x: c/ ^- ]4 `
如果用戶訪問 沒有指定的 程序跳轉至 空間目錄下 aaa/index.asp3 z1 r G7 F0 a, d
7 A) g6 J9 _% v4 \
怎麼樣,簡單吧。
* {, c) n, r2 V) Q2 S9 U! A7 q: V3 i& f* m+ E9 S
elseif Request.ServerVariables(」SERVER_NAME」)=」www.b.com 」 then
2 T. e8 A+ R. Z# L- Presponse.redirect 「b/index.asp」& ?4 C+ M0 |! J8 G& Q g8 U
4 P, n, U% [ ]+ S# o
這段是可以無限複製的哦,一個虛擬主機放幾百個站點就是你自己設置的了
1 r3 L/ _6 ?4 |$ F7 ?" L只要把域名都綁定在你的虛擬主機上,然後設置這個域名所綁定的站點就OK了
' G( M: ^% B( ?& O+ D. t
$ {& h1 Z' ~4 w0 p1 t這種要看你的虛擬主機能綁多少個玉米。能綁100個的話就能放100個站,並且利於網站管理,這樣做可以根據文件夾名,就知道這個是哪個站
* ^$ i/ n; g+ |$ ?7 Y4 M! B. y. I D- W; d% H4 X
來源:http://dingzong88.cn/2009/05/one-space-multi-site/ |
|