Windows 2003服务器中IIS 6主机头功能:
利用Windows 2003中的IIS 6组件实现让多个不同的网站都用80端口对外发布,而访问时直接输入地址即可不用加任何虚拟目录路径也不需要修改默认端口号。这就是IIS 6中的主机头功能。通过一个案例详细介绍 配置windows2003服务器IIS主机头发布多个站点:实现的功能就是在同一台服务器上发布两个不同的网站,而这两个网站都使用80端口,而且访问时不通过虚拟目录完成。
分别建立两个站点。首先建立A站点:
第一步:在Windows 2003中启动IIS组件,然后在网站选项上点鼠标右键选择“新建”-“网站”。
第二步:在网站描述处填写“softer站点”来区分不同网站名称,点“下一步”按钮继续。
第三步:接下来就是主机头设置的关键了,网站IP地址处信息保持默认的“全部未分配”即可,端口是默认的80,最下面的“此网站的主机头”输入一个域名,当然如果真的要对internet发布自己的网站,这个域名是要输入真实的已经注册的已经做好网站备案的。
第四步:选择网站发布的主目录,通过“浏览”按钮定位站点文件夹。
第五步:设置网站访问权限,这个就要根据站点的特征决定。至此就完成了第一个站点的创建和发布工作。
按之前的步骤建立B站点:网站描述填写“其他描述内容”以示区别。设置第二个网站的主机头信息,填写区别于A站点的url地址作为此站点的主机头,其他保持默认。这个站点和之前的第一个站点都使用了80端口进行发布。
完成第二个网站的发布操作之后即可实现两个站点都使用了80端口对外发布。
如果有有一个空间,而你又想放置多个多个站点,这些代码可以帮到你ASP 代码
<%if Request.ServerVariables("SERVER_NAME")="themoon.org.ru" then
response.redirect "mylife"
else
response.redirect "index1.htm"
end if%>
ASP 代码
<%
select case request.servervariables("http_host")
case "[url]www.themoon.org.ru[/url]" '1
Server.Transfer("along.htm")
case "[url]www.themoon.pp.ru[/url]" '2
Server.Transfer("net.htm")
case "[url]www.themoon.com.cn[/url]" '3
Server.Transfer("null.htm")
...... 继续添加 ......
end select
%>
ASP 代码
<%if instr(Request.ServerVariables
("SERVER_NAME"),"themoon.org.ru")>0 then
response.redirect "index.asp"
else if instr(Request.ServerVariables
("SERVER_NAME"),"themoon.pp.ru")>0 then
response.redirect "x/index.asp"
else if instr(Request.ServerVariables
("SERVER_NAME"),"themoon.com.cn")>0 thenr
esponse.redirect "index3.asp"
end if
end if
end if%>
ASP 代码
<%if Request.ServerVariables("SERVER_NAME")="[url]www.themoon.org.ru[/url]" then
response.redirect "main1.asp"
else if Request.ServerVariables("SERVER_NAME")="themoon.org.ru" then
response.redirect "main1.asp"
else if Request.ServerVariables("SERVER_NAME")="[url]www.themoon.pp.ru[/url]" then
response.redirect "/web/index.asp"
else if Request.ServerVariables("SERVER_NAME")="themoon.pp.ru" then
response.redirect "/web/index.asp"
end if
end if
end if
end if%>
ASP 代码
<%
'取得HTTP输入的值并付值到HTOST中
host=lcase(request.servervariables("HTTP_HOST"))
'开始条件跳转
SELECT CASE host
' 如果HOST的值是[url]www.cctribe.com[/url]就选择事件case"[url]themoon.org.ru[/url]"的命令
CASE "[url]themoon.org.ru[/url]"
' Below is the redirect command
response.redirect "mylife/"
CASE "[url]themoon.pp.ru[/url]"
response.redirect "lovewall/"
'We use CASE ELSE to fix any other requests
CASE ELSE
response.redirect "guestbook/"
END SELECT
%>
JavaScript 代码
<script>
try
{ 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 if( self.location == "http://玉米四/" )
{
top.location.href = "http://玉米四/目录"
}
else
{ document.write ("错误的访问地址") }
}
catch(e) { }
</script>
PHP 代码
<?php
switch ($_SERVER["HTTP_HOST"]) {
case "themoon.org.ru":
header("location:mylife")
break
default:
header("location:lovewall")
break
}
?>
PHP代码
<?php
$domain_net="cctribe.com"
$dot_net_url="bbs/"
$dot_com_url="flash"
if(($HTTP_HOST=="$domain_net")or($HTTP_HOST=="[url]www.$domain_net[/url]"))
{
Header("Location: $dot_net_url")
}
else
{
Header("Location: $dot_com_url")
}
?>
你这个不对嘛。。。1、你标题上说是php的,怎么又变成asp的?到底是asp的,还是php的,还是两个都支持呢?
2、你放的那个代码,是举个例子,还是原文照搬的?
如果是php的,应该这样做:
1、两个网站分别建两个目录!如main 和 bbs
2、根目录下做一个文件,命名为index.php
3、index.php文件如下:
<?php
//以下域名中文部分请自行填写完整,如www.abc.com
switch ($_SERVER['HTTP_HOST') {
case '第一个域名' :
header('Location: http://第一个域名/main')
break
case '第二个域名' :
header('Location: http://第二个域名/bbs')
break
default:
header('Location: http://第一个域名/main')
break
}
?>
如果是asp,你那个写错了吧,是 Request.ServerVariables("HTTP_HOST")
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)