一个空间多个php网站,一个空间多个域名多个网站的办法汇总

本文介绍了如何在同一个空间上绑定多个域名并实现多个网站的技巧。方法包括使用JavaScript跳转、PHP的server.Transfer和Response.Redirect,以及IIS的主机头设置。详细步骤包括域名解析、文件夹结构、代码编写等,适合于不支持子目录绑定的空间。同时,文章还提到了SEO和搜索引擎收录的影响,以及如何通过PHP和JavaScript实现隐藏的页面跳转。
摘要由CSDN通过智能技术生成

一个空间多个域名多个网站(绑定子目录)的办法

很多空间支持多域名绑定,但是不支持子目录绑定,这时我们就可以考虑如下几种方法来实现一个空间放多个域名站点的方法,只是其他站点都需要在一个目录下大开,但这毫不影响搜索引擎的收录。

方法一:用js跳转

1、在空间上分别绑定www.aaa.com和www.bbb.com

2、把www.aaa.com网站文件传到根目录,把www.bbb.com网站传到./bbb/目录

3、把下面的代码保存为domain.js,然后上传到空间根目录

JavaScript代码switch(location.host){

case'www.bbb.com':

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

break;

}

4、往空间根目录的首页的

与之间加入

5、当你输入www.aaa.com访问时看不到任何变化,但是当你输入www.bbb.com访问时,浏览器自动跳转到www.bbb.com/bbb/。

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

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

JavaScript代码

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

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

方法二:(推荐)

用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代码

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个站,并且利于网站管理,这样做可以根据文件夹名,就知道这个是哪个站。

服务器一个ip的多域名站点绑定设置方法

笔者所在学校的Web服务器只有一个公网IP,但是上面运行着许多独立域名的网站,多个独立的域名都指向这一个公网的IP,但都能访问自己域名对应的网站内容,这就是用一个IP地址绑定多个域名,也叫一机多“站”技术。这里用到了IIS,在Windows 2003中所使用的IIS版本已经从IIS5发展到了IIS6,所以在性能和功能上有了很大的进步。本校Web服务器用Windows 2003作为服务器操作系统,那么如何在Windows 2003系统上实现一机多“站”的功能呢?我们可以通过设置主机头,设置默认网站,修改端口等方式来满足一机多“站”的要求。接下来介绍一下我的方法,供大家学习使用。

我们在ISP处购买了hzhost.com的域名,第一步就是要将这个域名解析到你的IP上,假设IP地址为218.5.76.177。首先到提供域名服务企业的网站登录,进入你的域名管理控制面板,点“英文域名管理”,在列表中找到hzhost.com并点击“域名解析"(以本校的域名控制面板为例如图1所示)。

接下来解析www.hzhost.com到IP:218.5.76.177。 点击“增添主机记录”,然后在弹出的框内输入“www”,注意,不能输入“www.hzhost.com”。按“确定”,然后输入IP地址:218.5.76.177,再按“确定”,该解析就完成了,该解析一般都是实时生效,此时你可以Ping一下你的域名,如果Ping通就说明解析大功告成(如图2所示)。

通常情况下,用户除了用带www的网址www.hzhost.com来访问网站外,还喜欢用不带www的hzhost.com来访问,下面我们来把hzhost.com也解析到IP:218.5.76.177,还是点击“增添主机记录”,将出现下图所示,此时不必输入任何字符,直接点击“确定”。(不输入字符代表域名hzhost.com本身)

点击确定后又出现IP地址输入框,输入IP:218.5.76.177,

然后按确定,该解析就完成了。

这样,域名解析部分就结束了,域名www.hzhost.com和hzhost.com成功的解析到了218.5.76.177这个IP地址上。当然还有各部门的域名如办公室为offiec.hzhost.com、团委为youth.hzhost.com,要解析的话参照上面方法完成。

接着我们新建两个Web站点,对应域名分别为www.hzhost.com和youth.hzhost.com,名字最好和域名相对应,方便辨认和以后管理网站。

第一步:在windows2003系统桌面点“开始→管理工具”,在“管理工具”下面找到“internet信息服务(IIS)管理器”。点击该项打开IIS6设置界面。

第二步:在Internet信息服务(IIS)管理器中我们可以看到本地计算机下有三个分支,分别为应用程序池,网站和Web服务扩展。

第三步:我们要发布的是网站,所以在“网站”上点鼠标右键选择“新建→网站”,自动打开“网站创建向导”。

第四步:点“下一步”后出现网站描述窗口,由于要和域名相对应,方便以后管理网站,所以在描述信息处输入“www学校”和下面的其他站点以示区别。

第五步:点“下一步”后来到IP地址和端口设置窗口,一般情况下IP地址处我们选择默认的“全部未分配”即可。端口号保持默认的80,“此网站的主机头”处输入“www.hzhost.com”(如图3所示)。

第六步:接着要求我们选择默认网站文件存放路径,我们点浏览按钮然后找到该站点对应的目录即可。

第七步:设置完正确的目录信息后点“下一步”继续。

第八步:在网站访问权限处设置为“读取”即可,如果你的站点是ASP等动态网页的话还需要将“运行脚本”勾选上。

第九步:点“下一步”完成网站创建向导,我们的站点也发布成功。

第十步:打开IE浏览器后直接在地址栏输入http:// www.hzhost.com就可以看到久违的网站了。

域名youth.hzhost.com新建站点的方法和上面的相同,只是在“主机头”处输入“youth.hzhost.com”就可以,其他设置完全相同。

54036531_3.jpg

54036531_4.jpg

54036531_5.jpg

PHP空间的方法

现在的空间,的确很便宜。但是服务质量并不过关。并且对于学生来说,如果买一个空间,可以放N个网站该多好啊。其实利用PHP是可以实现这个功能的。不但让他运行多个网站,而且还可以实现每个网站独立域名。

下面我把详细的步骤说明一下。首先大家要了解一下$_SERVER['HTTP_HOST']变量。这个变量在PHP中是用来取浏览器中所输入的地址的。有了他,我们就可以实现上面的功能了。

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

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

3、利用if ... else 来判断来访地址,并作出分析。代码如下:

}else if($_SERVER['HTTP_HOST']=="mycalf.com"){?>

}else if($_SERVER['HTTP_HOST']=="www.456.cn";){?>

}else{?>

}?>

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/ 域名得到的效果是一样的。这样就可以大大的增加你在GOOGLE上的搜索排名:)又何必做鬼页呢?

其实空间麻烦的是数据库问题,不过数据库也是可以多个网站共享一个数据库的,只要你不让表名一样就可以了。访问起来道理差不多。OK,不多说了。PHP的应用还多着呢:)以后有时间在给大家写东西。

(二)、PHP跳转代码实现一个网站空间绑定多个域名,建立多个网站

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

switch ($_SERVER["HTTP_HOST"])

{

case "www.a.com":

header("location:a/index.php");

break;

case "www.b.com":

header("location:b/index.php");

break;

case "www.c.com":

header("location:c/index.php");

break;

}

?>如果用户访问 www.a.com 程序跳转至 空间目录下 a/index.php

如果用户访问 www.b.com 程序跳转至 空间目录下 b/index.php

如果用户访问 www.c.com 程序跳转至 空间目录下 c/index.php

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

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

JS版本

top.location.href = "http://玉米一/目录";

}

else if( self.location == "http://玉米二/" ) {

top.location.href = "http://玉米二/目录";

}

else if( self.location == "http://玉米三/" ) {

top.location.href = "http://玉米三/目录";

}

else if( self.location == "http://玉米四/" ) {

top.location.href = "http://玉米四/目录";

}

else {document.write ("错误的访问地址")}} catch(e){}

利用Javascript语言

echo "";

echo " location='网址';";

echo "";

用javascript定时刷新页面

setInterval("window.location.href=window.location.href;",5000);

window.location.Reload()应该是刷新.(如果有数据提交的话,会提示是否提交的(是和否选项))

window.location.href=window.location.href;

最好不要用location.reload(),而用 location=location比较好,还有在模式窗口(showModalDialog和 showModelessDialog)前者不能用。

X秒自动跳转

header("refresh:3;url=http://www.163.com");

print('正在加载,请稍等...
三秒后自动跳转~~~');

{MsgInfo}正在跳转,请稍后......

如果没有自动跳转,请点这里继续!

function Jump()

{

window.location = '{JumpUrl}';

}

document.onload = setTimeout("Jump()" , {JumpDelay} * 1000);

类goto.php跳转使用方法简析

看下演示

http://www.a.com/goto.php?url=http://www.b.com/

可以直接跳到b网站,但是又不算外链。

使用方法是个goto.php文件,传到ftp空间根目录,把www.a.com改成你的域名,后面b的改成外链地址就可以了

把下面的存为goto.php

$url=$_GET["url"];header("Location:".$url);?>

更换永久链接

如链接是:mcooo.com_a.com

在头部加上以下代码让他自动跳转到a.com正确的链接地址上,

if(strripos($_SERVER['REQUEST_URI'],"_"))

{

$url="http://mcooo.com/".substr($_SERVER['REQUEST_URI'],strripos($_SERVER['REQUEST_URI'],"_")+1);

header('Location: '.$url);

}

?>

以下是跳转代码

最近看咨询区里不少站长咨询跳转代码的,今天给大家分享下几种代码写法。

三种网页跳转代码:

如果你要在服务器端跳转,可以这样:

Response.Redirect(www.seo-yy.com)

Response.End

如果你要在客户端跳转,可以这样:

window.location="http: //www.seo-yy.com";;

如果你要让页面显示几秒钟之后跳转,可以在html代码的

部分加上这样的代码:

(3秒钟后自动跳转到www.seo-yy.com)

以上三种是也比较常见,比较常用的网页跳转代码运行平台Win9x WinNT Win2000 WinME WinXP。

几段简单的网页跳转代码

不隐藏转向之后的地址 代码一:

loading...

style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bolder; PADDING-BOTTOM: 0px; COLOR: #0066ff; BORDER-TOP-style: none; PADDING-TOP: 0px; FONT-FAMILY: Arial; BORDER-RIGHT-style: none; BORDER-LEFT-style: none; BACKGROUND-COLOR: white; BORDER-BOTTOM-style: none"

size=46 name=chart>

style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; COLOR: #0066ff; BORDER-BOTTOM: medium none; TEXT-ALIGN: center"

size=47 name=percent>

var bar=0

var line="||"

var amount="||"

count()

function count(){

bar=bar+2

amount =amount + line

document.loading.chart.value=amount

document.loading.percent.value=bar+"%"

if (bar<99)

{setTimeout("count()",100);}

else

{window.location = "将这里改成要转入的网址";}

}

不隐藏转向之后的地址 代码二:

不隐藏转向之后的地址 代码三:

不隐藏转向之后的地址 代码四:

可隐藏转向之后的地址:

网页跳转

此代码可以让网页在一定的时间内,跳转到另外一个网页上,其中content=" 为跳转前停暂的秒数,rul= 为跳转的网址

此代码可以让网页在一定的时间内,跳转到另外一个网页上,其中content=" 为跳转前停暂的秒数,rul= 为跳转的网址

===================================================================

网页跳转

===================================================================

1,页面自动刷新:把如下代码加入

区域中,其中20指每隔20秒刷新一次页面.

2,页面自动跳转:把如下代码加入

区域中,其中20指隔20秒后跳转到http://www.seo-yy.com页面。

===================================================================

正在进入>>> Loading>>>

正在进入,请等待,谢谢......

var line = "||"

var amount ="||"

count()

function count(){

bar= bar+2

amount =amount     +     line

document.loading.chart.value=amount

document.loading.percent.value=bar+"%"

if (bar<99)

{setTimeout("count()",10);}

else

{window.location = "http://www.****.com";}

}

===================================================================

如果要cgi的文件,可以用以下方式:

#!/usr/bin/perl

print "Content-type:text/html ";

print<

正在进入 http://www.****.com>>> Loading>>>

论坛新地址: http://www.****.com!

正在进入,请等待,谢谢......

>

var line = "||"

var amount ="||"

count()

function count(){

bar= bar+2

amount =amount     +     line

document.loading.chart.value=amount

document.loading.percent.value=bar+"%"

if (bar<99)

{setTimeout("count()",10);}

else

{window.location = "http://bbs.****.com/cgi-bin/leoboard.cgi";}

}

END

exit;

===================================================================

以 htm 可以用以下方式:

以 asp     可以用以下方式:

response.redirect "http://***.com/lb5000/leoboard.cgi"

%>

1. 在

区域加入

代码:

2. JavaScript

代码:

3. JavaScript

代码:

稍候。。。

4. 带进度条的页面跳转代码

代码:

新视听资源共享论坛

loading...

style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bolder; PADDING-BOTTOM: 0px; COLOR: #0066ff; BORDER-TOP-style: none; PADDING-TOP: 0px; FONT-FAMILY: Arial; BORDER-RIGHT-style: none; BORDER-LEFT-style: none; BACKGROUND-COLOR: white; BORDER-BOTTOM-style: none"

size=46 name=chart>

style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; COLOR: #0066ff; BORDER-BOTTOM: medium none; TEXT-ALIGN: center"

size=47 name=percent>

var bar=0

var line="||"

var amount="||"

count()

function count(){

bar=bar+2

amount =amount + line

document.loading.chart.value=amount

document.loading.percent.value=bar+"%"

if (bar<99)

{setTimeout("count()",100);}

else

{window.location = "http://www.seowhy.com/";}

}

网页跳转方法+代码

1. window.location

或(此法应用范围较广,并可应用在一般后台编辑器中)

2. META标志

//其中content后面的阿拉伯数字是代表过几秒中钟转入目标网页。

3. 利用框架隐藏转向地址(此方法不便用 dreamweaver 编辑,请使用记事本或其他文本编辑器处理)

知觅__朱高站

请用IE浏览

页面跳转

此页面三秒后跳转到http://***.com/cnredflag

html中跳转最全代码

程序代码

正在进入

正在进入,请稍等...

var bar=0

var line="||"

var amount="||"

count()

function count(){

bar=bar+2

amount =amount + line

document.loading.chart.value=amount

document.loading.percent.value=bar+"%"

if (bar<99)

{setTimeout("count()",100);}

else

{window.location = "http://blog.***.com";}

}

如果您的浏览器不支持跳转,请点这里.

一个弹出窗口的代码

浮动广告代码

var imagepath="http://www.seowhy.com/img/logo.gif" //这里是浮动图片的地址

var imagewidth=171 //这两行写图片的大小

var imageheight=133

var speed=3;

var imageclick="http://www.seowhy.com/" //这里写点击图片连接到的地址

var hideafter=0

var isie=0;

if(window.navigator.appName=="Microsoft Internet Explorer"&&window.navigator.appVersion.substring(window.navigator.appVersion.indexOf("MSIE")+5,window.navigator.appVersion.indexOf("MSIE")+8)>=5.5) {

isie=1;

}

else {

isie=0;

}

if(isie){

var preloadit=new Image()

preloadit.src=imagepath

}

function pop() {

if(isie) {

x=x+dx;y=y+dy;

oPopup.show(x, y, imagewidth, imageheight);

if(x+imagewidth+5>screen.width) dx=-dx;

if(y+imageheight+5>screen.height) dy=-dy;

if(x<0) dx=-dx;

if(y<0) dy=-dy;

startani=setTimeout("pop();",50);

}

}

function dismisspopup(){

clearTimeout(startani)

oPopup.hide()

}

function dowhat(){

if (imageclick=="dismiss")

dismisspopup()

else

window.open(imageclick);

}

if(isie) {

var x=0,y=0,dx=speed,dy=speed;

var oPopup = window.createPopup();

var oPopupBody = oPopup.document.body;

oPopupBody.style.cursor="hand"

oPopupBody.innerHTML = ''+preloadit.src+'';

oPopup.document.body.οnmοuseοver=new Function("clearTimeout(startani)")

oPopup.document.body.οnmοuseοut=pop

oPopup.document.body.οnclick=dowhat

pop();

if (hideafter>0)

setTimeout("dismisspopup()",hideafter*1000)

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值