前进的每一步,都是学习,是成长。
在一个空间上放置多个网站的方法[转载]
  • 首页 > 软件设计 > Web设计
  • 作者:最爱香茗
  • 2018年5月22日 13:46 星期二
  • 浏览:405
  • 字号:
  • 评论:0
  •  三种方法实一个虚拟空间放多个网站
    有些朋友为了省钱需要在一个空间上安装多个网站,所以在空间上绑定了好几个域名,但是访问到的却是相同的内容,怎么样让不同的域名访问不同的内容呢? 
      如果一个空间放多个站,会使输入域名后,地址栏上面加上站点所在文件夹的名字。举个例子,如输入www.hbxfyy.com,地址栏会跳成www.hbxfyy.com/hbxfyy    红色文件即为这个站所放在空间里的文件夹名字。
    方法一:(这种方法在网络上使用很普遍)
    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' ></script>

    5、当你输入www.aaa.com 访问看不到任何变化,但是当你输入www.bbb.com 访问,浏览器自动跳转到 www.bbb.com/bbb/ 。这样便实现了同一个空间安装两个网站了,要实现多个网站可以依此类推。

     

    方法二:(本人推荐)

    用server.Transfer("")来实现一个空间多个站的方法

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

    <%
    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网页文件如下 
    <%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"

    这段是可以无限复制的哦,一个虚拟主机放几百个站点就是你自己设置的了
    只要把域名都绑定在你的虚拟主机上,然后设置这个域名所绑定的站点就OK了

    这种要看你的虚拟主机能绑多少个玉米。能绑100个的话就能放100个站,并且利于网站管理,这样做可以根据文件夹名,就知道这个是哪个站。

     

     

      您阅读这篇文章共花了:  
    二维码加载中...
    本文作者:最爱香茗      文章标题: 在一个空间上放置多个网站的方法[转载]
    本文地址:http://www.gcsjl8.com/?post=100
    版权声明:若无注明,本文皆为“成长记忆”原创,转载请保留文章出处。