一个空间使用不同子目录且绑定多个域名的方法

一个空间使用不同子目录且绑定多个域名的方法

一直有建立多个子域名站点的想法,奈何钱包不够无法购买多个空间,大部分空间也不支持子目录域名绑定,这时就需要考虑如何实现一个空间使用不同子目录绑定域名的方法,只是其他站点都需要在一个目录下打开,但这并不影响搜索引擎的收录。


方法一·使用js跳转

  • 例如在空间上分别绑定www.aaa.com和www.bbb.com
  • 把www.aaa.com网站文件传到根目录,把www.bbb.com网站传到./bbb/目录
  • 把下面的代码保存为domain.js,然后上传到空间根目录
JavaScript代码如下:

switch(location.host){
case'www.bbb.com':
location.href="http://www.bbb.com/bbb/"
break;
}
  • 在空间根目录的首页的<head>与</head>之间加入如下代码
<scriptlanguage='javascript'src="/bbb/domain.js"></script>
  • 当你输入www.aaa.com访问时看不到任何变化,但是当你输入www.bbb.com访问时,浏览器自动跳转到www.bbb.com/bbb/

这样便实现了同一个空间安装2个网站了,要实现多个网站可以依此类推。

或者直接在头部添加类似如下代码:

JavaScript代码如下:

<script language=javascript>    
if (document.domain =='www.bbb.com')     
    this.location = "www.bbb.com" + this.location.pathname + this.location.search;   
</script>  

方法二·用server.Transfer(“”)来实现一个空间多个站点

先将您所有的域名绑定到您的虚拟主机上,然后将虚拟主机根目录中的index.asp(首页文件)里加入下列代码就可以了:

ASP/Visual Basic代码

<%   
sn=lcase(Request.ServerVariables("SERVER_NAME")) '用于获取用户是通过哪个域名访问的,并转换成小写   
if sn="www.abc.net" or sn="yuxicn.net"   then server.Transfer("default1.asp")    
if sn="www.def.net"   or sn="zxks.net" then server.Transfer("index.html")    
%>  

如果访问者输入的域名是www.abc.net或abc.net的话,就访问default1.asp页面,如果是用def.net或www.def.net的话就调用index.html文件。

网上还有一些教程是使用response.redirect来实现转向,但在这里,我建议使用server.Transfer(“”)来实现这个功能,好处有以下几个方面:

  1、不会出现页面跳转,直接输入网址后,网址后不会带任何文件,访问者不会看出你的两个网站是放在同一虚拟主机上。

  2、server.Transfer(“”)不会阻挡搜索引擎对你的网站的收录,而response.redirect可不一定


方法三·(最方便管理,一个空间放的站越多越推荐)

方法是利用一个asp文件通过浏览器输入的域名,判定他是要打开那个文件夹里的站点,来实现一个虚拟放置多个站点(缺点例如打开abc.com,在浏览器中看到的是abc.com/b因为站点在b目录下)

其他说明:如果虚拟主机不支持子目录绑定,这是非常有效的办法

实现方法如下:

  • 先建立一个默认主页index.asp
  • 然后把A站放在A文件夹
  • B站放在B文件夹下
  • C站放在C文件夹下

index.asp网页文件如下 

ASP/Visual Basic代码

<%if Request.ServerVariables("SERVER_NAME")="www.a.com " then    
response.redirect "a/index.asp"    
elseif Request.ServerVariables("SERVER_NAME")="www.b.com " then    
response.redirect "b/index.asp"    
elseif Request.ServerVariables("SERVER_NAME")="www.c.com " then    
response.redirect "c/index.asp"    
else    
response.redirect "aaa/index.asp"    
end if%>  

代码作用说明:

  • 如果用户访问 www.a.com 程序跳转至 空间目录下 a/index.asp
  • 如果用户访问 www.b.com 程序跳转至 空间目录下 b/index.asp
  • 如果用户访问 www.c.com 程序跳转至 空间目录下 c/index.asp
  • 如果用户访问 没有指定的 程序跳转至 空间目录下 aaa/index.asp
elseif Request.ServerVariables("SERVER_NAME")="www.b.com " then
response.redirect "b/index.asp"

这段可以无限复制,以至于可以实现一个虚拟主机放几百个站点

只要将域名都绑定在虚拟主机上,分别设置每个域名所绑定的站点即可,并且利于网站管理,可以根据文件夹名知道站点名。

© 版权声明
THE END
喜欢就支持一下吧
点赞12赞赏
分享
评论 抢沙发

请登录后发表评论