设置二级域名,指向特定目录或者文件,如何操作?

我网站上有一个http://dr80.com/mail.html这个页面,专门用于登录电邮。我想开一个二级域名,mail.dr80.com指向上述地址。但不想用URL跳转... 我网站上有一个http://dr80.com/mail.html
这个页面,专门用于登录电邮。
我想开一个二级域名,mail.dr80.com 指向上述地址。
但不想用URL跳转功能,因为我的域名商所提供的跳转功能有跳转提示,并且有点慢。
另外,我还需要把bbs.dr80.com指向http://dr80.com/bbs 目录,也不想用URL跳转功能。
网页建于虚拟主机上。
展开
 我来答
优网
推荐于2017-09-18 · 十五年企业网络策划运营
优网
采纳数:8615 获赞数:28383

向TA提问 私信TA
展开全部

这个方法倒是不少,不过要根据自己的具体环境参考选择:

  1. 方法一:用js跳转

    在空间上分别绑定www.aaa.comwww.bbb.com

    www.aaa.com网站文件传到根目录,把www.bbb.com网站传到./bbb/目录把下面的代码保存为domain.js,然后上传到空间根目录

    JavaScript代码

    switch(location.host){    

    case'www.bbb.com':   

    location.href="http://www.boaer.com/bbb/"  

    break;   

    }

    往空间根目录的首页的<head>与</head>之间加入<scriptlanguage='javascript'src="/bbb/domain.js"></script>当输入www.aaa.com访问时看不到任何变化,但是当输入www.bbb.com访问时,浏览器自动跳转到www.bbb.com/bbb/

    要实现多个网站可以依此类推。或者直接在头部添加类似如下代码:

    <script language=javascript>

    if (document.domain =='www.boaer.com')

    this.location = "www.bbb.com" + this.location.pathname + this.location.search;

    </script>  

  2. 方法二:(推荐)

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

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

    <%   

    sn=lcase(Request.ServerVariables("SERVER_NAME")) '用于获取用户是通过哪个域名访问的,并转换成小写   

    if sn="www.boaer.com" or sn="boaer.com"   then server.Transfer("default1.asp")    

    if sn="www.ddbei.com"  or sn="ddbei.com" then server.Transfer("index.html")    

    %>

    效果:如果输入的域名是www.boaer.com或boaer.com的话,就访问default1.asp页面,如果是用ddbei.com或www.ddbei.com的话就调用index.html文件。

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

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

  4. 其他说明:如果虚拟主机不支持子目录绑定,这是非常有效的办法实现方法如下 :先建立一个默认主页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"
    这段是可以无限复制的,一个虚拟主机放几百个站点就是自己设置的了只要把域名都绑定在虚拟主机上,然后设置这个域名所绑定的站点就OK了,这种要看虚拟主机能绑多少个玉米。能绑100个的话就能放100个站,并且利于网站管理,这样做可以根据文件夹名,就知道这个是哪个站。

  5. PHP空间的方法

    利用PHP是可以实现这个功能的。不但让他运行多个网站,而且还可以实现每个网站独立域名。下面把详细的步骤说明一下。首先了解一下$_SERVER['HTTP_HOST']变量。这个变量在PHP中是用来取浏览器中所输入的地址的。可以实现上面的功能了

    先把需要的两个域名解析到空间。比如:www.***com 和 www.***.cn 两个域名。如果有更多的域名也没关系。方法是一样的。

    把默认文档设置为index.php,当然空间需要是支持PHP的哦。:)

    3、利用if ... else 来判断来访地址,并作出分析。代码如下:
    <?if($_SERVER['HTTP_HOST']=="www.123.com";){?>
    <META HTTP-EQUIV="Refresh" CONTENT="1;URL=http://www.123.com/main">
    <?}else if($_SERVER['HTTP_HOST']=="mycalf.com"){?>
    <META HTTP-EQUIV="Refresh" CONTENT="1;URL=http://123.com/main">
    <?}else if($_SERVER['HTTP_HOST']=="www.456.cn";){?>
    <META HTTP-EQUIV="Refresh" CONTENT="1;URL=http://www.456.cn/home">
    <?}else{?>
    <META HTTP-EQUIV="Refresh" CONTENT="1;URL=http://www.456cn/home">
    <?}?>
    4、完成
    这里要说明的一点是,有的时候域名是用大写的,那么就需要对$_SERVER['HTTP_HOST']这个变量进行处理,来让他把所有的字符转换成小写。
    代码如下:
    <?
    $querystring = preg_replace(array("/\(\)/","/_/"),array("","-"),$_SERVER["QUERY_STRING]);
    $I = strtolower(trim($_SERVER['HTTP_HOST']));
    ?>
    如果是这样写,就需要把上面的<?if($_SERVER['HTTP_HOST']=="www.123.com";){?>这句变为<?if($I=="www.123.com";){?>,这样就可以在输入网址是大写的时候,也可以正常访问了。
    这个方法也有一个不足点,就是需要在域名后面跟一个目录名。但是如果你不怕乱的话,也可以把两个网站都放到根目录下。但是推荐是每个网站一个目录。现在许多空间商,都支持5个以内的域名的解析。这样就可以买一个空间,拥有5个网站了。
    这个办法的优势也是有的,他每个域名都是可以访问其他网站的,比如输http://www.123.com/home/ 与访问http://www.123.cn/ 域名得到的效果是一样的。
    其实空间麻烦的是数据库问题,不过数据库也是可以多个网站共享一个数据库的,只要不让表名一样就可以了。访问起来道理差不多。

妈妈说名字太长不记得
2010-07-01 · 知道合伙人互联网行家
妈妈说名字太长不记得
知道合伙人互联网行家
采纳数:3729 获赞数:5729
计算机网络三级证书 从事网站开发10年经验

向TA提问 私信TA
展开全部
到IIS里新建一个网站,然后把主目录设置为你要的目录,再衫敏设置一下主机头,就OK了

补充:你如果不能族塌局对IIS操作,那兆让只能用URL跳转来实现
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
从信扯0L
2010-07-01 · TA获得超过7993个赞
知道大有可为答主
回答量:5268
采纳率:0%
帮助的人:3707万
展开全部
(使用动态域名服务选择的就是这样一种正嫌配置方式)。 你可以选择 WEB 站点主目录,该目录用于存放主... 操作。 主目录用于设定该站点的文件目录,可以选择本地目录或另一台计算机的共享位置举清消。 本地路正知径中...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式