Total Pageviews

Friday, 22 March 2013

子目录绑定-简单实现一个空间建多个站点,绑定多个域名

如果你的空间不支持子目录绑定,但你又想在同一个空间实现多个相互独立的网站的话,以下方法正是你要找的。
如何实现一个空间两个站点绑定两个域名,既在同一个虚拟空间内放置2个或多个不同的站点,并同时可使用2个或多个域名访问各自的站点。
方法1.jS调用域名转向
1、在空间上分别绑定域名 www.aaa.com 和 www.bbb.com 当然域名也要做好指向(解析到)空间喔。
2、把 www.aaa.com 网站文件传到根目录,把 www.bbb.com 网站传到 ./bbb/ 目录
3、 把下面的代码保存为 domain.js ,然后上传到空间根目录
switch(location.host){
case ‘www.bbb.com’:
location.href=”http://www.bbb.com/bbb/”
break;
}
4、往空间根目录的首页的 <head> 与 </head> 之间加入
<script language=’javascript’ src=’domain.js’></script> 即调用刚才的设定。
5、当你输入 www.aaa.com 访问时看不到任何变化,但是当你输入 www.bbb.com 访问时,
浏览器自动跳转到 www.bbb.com/bbb/ 。
这样便实现了同一个空间存放2个网站了,并且互不相扰,要实现同一个空间多个网站多个域名,可以依此类推添加几行代码就行了。

方法2.普通法:
1、首先确保空间支持asp动态网页文件,开通虚拟空间时要求空间商(客服)在空间里绑定2个或3个域名(即主域名和次域名,一般加绑三两个次域名是免费的),如果空间支持自助控制面板自行添加域名绑定就更好了。
2、在空间根目录分别开2个文件夹如Blog和bbs,用于放置2个不同的站点;
3、将以下代码建立index.asp文件,上传至空间根目录即可。
<%if Request.ServerVariables(”SERVER_NAME”)=”zhhui.cn” then ‘第1个输入的网址
response.redirect “http://www.zhhui.cn” ‘将它转发到相应的文件夹
else%>
<%end if%>
<%if Request.ServerVariables(”SERVER_NAME”)=”www.zhhui.cn” then
response.redirect “/Blog”
else%>
<%end if%>
<%if Request.ServerVariables(”SERVER_NAME”)=”BBS.cn” then ‘第2个输入的网址
response.redirect “http://www.BBS.cn” ‘将它转发到相应的文件夹
else%>
<%end if%>
<%if Request.ServerVariables(”SERVER_NAME”)=”www.BBS.cn” then
response.redirect “/bbs”
else%>
<%end if%>

方法3.隐藏域名转向法
新建INDEX.ASP或default.asp插入以下代码:
<%
FromUrl = lCase(Trim(Request.ServerVariables(”HTTP_HOST”)))
If Instr(FromUrl,”hh”) Then
Response.Redirect(”/Blog”)
‘Response.Write(”<title>ZhHui</title><frameset><frame src=/Blog></frameset>”)
Response.End()
ElseIf Instr(FromUrl,”uc.cn”) Then
Response.Redirect(”/in2″)
‘Response.Write(”<title>主页</title><frameset><frame src=/in2##></frameset>”)
Response.End()
ElseIf Instr(FromUrl,”lj”) Then
Response.Redirect(”/in3″)
‘Response.Write(”<title>zhhui in3</title><frameset><frame src=/in3##></frameset>”)
Response.End()
ElseIf Instr(FromUrl,”qs.com”) Then
Response.Redirect(”/Biy”)
‘Response.Write(”<title>QsQS.COM</title><frameset><frame src=/BIY/></frameset>”)
Response.End()
End If
%>
保存后上传到空间根目录下。
和前面的绑定多个域名的方法比较,这个方法有些不同。她只需判断域名中是否包含有相应的关健字,如果有就做转向。注意红色的字。
可以看出,做转向时她只是判断关健字,这样,在空间上做转向时就可以不用写全域名了,只需写几个域名的关健字就可以了。
比如:www.zhhui.cn要转到blog目录,只要你一方面在域名设置好a记录指向空间iP,在空间这边再绑定好域名(有的空间商不支持自助绑定, 不过一般都可以绑定三个左右的域名,你找那些客服帮你作空间加绑域名就行了),最后,你要做的就是把上面的代码复制到index.asp或 default.asp(只要放在打开空间后最优先执行的那个动态文件里就行了)。你在这里只需设置关健字hui或zh甚至z都可以,我这里设置的是hH 即可把zhhui.cn转到我设置好的blog目录上了。主要不和你在此空间服务器上绑定的其它域名相冲突就行了。
因此,这个方法可以用在不想要或不需要在源码中出现相关域名的情况下使用。
如果你在同一空间里放多个网站,虽然指定和绑定了域名,但在搜索引擎收录该网站时的链接地址可能是主域名加目录名之类的了,所以以后访问或宣传时要 注意用相应的域名喔。从过往的经验来看,一般每个域名的站都能给搜索引擎收录到的,久了搜索引擎会更新好正确的收录的地址的,同一空间多个网站也不大会给 拉黑名单,但不代表没有风险.
-----------------------------------------------------------

同一空间绑定多个域名而实现访问不同的页面


ASP代码如下:
程序代码:
<%
select case request.servervariables("http_host")
case "www1.abc.net"
Server.Transfer("index1.htm")
case "www2.abc.net"
Server.Transfer("index2.htm")
case "www3.abc.net"
Server.Transfer("index3.htm")
…… 继续添加 ……
end select
%>
<%
CheckDomain
Sub CheckDomain()
dim sDomain
sDomain = Request.ServerVariables("HTTP_HOST")
If Instr(sDomain,"blog.abc.net")>0 then Response.Redirect "blog/"
End Sub
%>

附PHP代码如下:
程序代码:
<?php
switch ($_SERVER["HTTP_HOST"]) {
    case "www1.abc.net":
        header("location:index1.htm");
        break;
    case "www2.abc.net":
        header("location:index2.htm");
        break;
    case "www3.abc.net":
        header("location:index3.htm");
…… 继续添加 ……
        break;
}
?>