开发者社区> 科技小能手> 正文

Web服务器的配置与管理(2) 虚拟主机技术

简介:
+关注继续查看

在上篇博文中,我们已经利用IIS搭建好了一台Web服务器,并可以成功访问IIS中自带的默认站点,那么我们是否可以在这台服务器中再创建另外一个Web站点?也就是说,在一台Web服务器中是否可以同时存在多个网站呢?

答案当然是肯定的,其实很多中小企业的网站都是从网上租用的空间,提供空间租用的Web服务器里就同时存在了很多个网站。
但是当多个网站同时存在于一台服务器里时,就必须得有一种方法能够将它们区分开,这种方法也就是虚拟主机技术。

有三种方法可以实现虚拟主机技术:

  • 利用不同的IP地址
  • 利用不同的端口号
  • 利用不同的主机名(域名)

也就是说,只要让不同的网站在IP地址、端口号、主机名这三项中有一项是不相同的,那么这些网站就可以共存了。

下面分别来介绍这三种虚拟主机技术。

1. 使用不同IP地址架设多个网站

这种方法是为每个网站设置一个不同的IP,要采用这种方式首先需要Web服务器安装有多块网卡,每块网卡使用不同的IP。如果web服务器中只有一块网卡,那么也可以给这一块网卡绑定多个IP地址。打开本地连接,在TCP/IP属性的“高级”设置中,为服务器再添加一个IP地址192.168.0.15,如下图所示。

下面我们在【IIS管理器】中再新建一个Web站点。



IIS管理器中选择“网站”,然后在右侧的“操作”面板中选择“添加网站”。
“网站名称”可以随意设置,这里用ytvc。
“物理路径”也就是网站的主目录,这里设置为c:\ytvc。
网站的协议类型仍为http,IP地址使用192.168.1.15,端口号80。

网站创建好之后,在其主目录中也存放一个名为Default.htm的网页文件,这样在客户端输入不同的IP地址便可以访问相应的网站。

这种方式在实际应用中很少采用,因为如果服务器使用的是公网IP,那么公网IP地址是非常宝贵的资源,而这种方式无疑是要浪费大量的IP地址。

2. 使用不同TCP端口架设多个网站

这种方法是让每个网站仍然使用相同的IP地址,但给不同的网站分配不同的端口号。如默认网站仍然使用默认的80端口,ytvc网站则将端口改为8000。
首先将刚才在本地连接中添加的第二个IP删掉,然后在【IIS管理器】中选中ytvc网站,点击右侧“操作”面板中的“绑定”链接,将IP仍然设为192.168.1.5,将端口设置为8000。

 这样客户端在访问默认网站的时候,仍然可以通过URLhttp://192.168.1.5”的形式访问,而如果要访问ytvc网站,则端口号就不能省略,必须要使用“http://192.168.1.5:8000形式的URL。
但这时客户端无法访问ytvc网站,这是因为web服务器上的防火墙将发往TCP8000端口的数据自动过滤掉了,可以暂时关闭防火墙进行测试,或是在防火墙中增加一条入站规则。
打开防火墙的高级设置,新建一条入站规则,要创建的规则类型选择“端口”。

指定规则应用于TCP 8000端口。

对满足条件的操作允许连接。

在所有的网络上全部应用该规则。

为规则随意起一个名称。

入站规则创建好之后,在客户端就可以用8000端口正常访问ytvc网站了。

采用这种方式,客户端在访问网站时必须要在网址后面加上相应的端口号,而用户是不可能去记住每个网站的端口号的,所以这种方式在实践中也很少采用。

3. 使用不同主机头名架设多个网站
主机头名实际上就是每个网站的网址,也就是它的FQDN名,所以要利用该方法首先需要在DNS服务器中添加相应的区域和主机记录。下面在DNS服务器里创建一个名为ytvc.com.cn的区域,然后在其中添加一条名为“www”的主机记录,对应的IP地址是192.168.1.5。(如果没有DNS服务器,也可以通过修改客户机的hosts文件进行域名解析。)
然后我们为ytvc网站设置主机名www.ytvc.com.cn,并将其端口号该回80。

然后再将默认网站的主机名设置为www.coolpen.net

这样客户端就可以通过输入不同的网址以访问不同的网站,这也是实际中最经常采用也是最为推荐的一种方式,但采用这种方式就无法通过IP地址来访问相应的网站了(实际中的很多网站都是可以用网址访问,但无法用IP地址访问。)



本文转自 yttitan 51CTO博客,原文链接:http://blog.51cto.com/yttitan/1174415

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
SpringBoot中支持的Web服务器,网络模式和网络协议
SpringBoot中支持的Web服务器,网络模式和网络协议
20 0
Web 容器、HTTP 服务器 、Servlet 容器区别与联系
Web 容器、HTTP 服务器 、Servlet 容器区别与联系
25 0
web/http服务器实现
web/http服务器实现
14 0
HTTP 错误 403.14 - Forbidden Web 服务器被配置为不列出此目录的内容——错误代码:0x00000000
最近在课上学习IIS发布.NET Core项目出现HTTP 错误 403.14 - Forbidden Web 服务器被配置为不列出此目录的内容——错误代码:0x00000000
17 0
【web渗透思路】敏感信息泄露(网站+用户+服务器)
【web渗透思路】敏感信息泄露(网站+用户+服务器)
31 0
RH358配置Web服务器--使用 Apache HTTPD 对虚拟主机进行配置和故障排除
RH358配置Web服务器--使用 Apache HTTPD 对虚拟主机进行配置和故障排除
78 0
请将文件MP_verify_N8no8dpNO9n7wuBZ.txt上传至XXX指向的web服务器(或虚拟主机)的目录
请将文件MP_verify_N8no8dpNO9n7wuBZ.txt上传至XXX指向的web服务器(或虚拟主机)的目录
380 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
边缘安全,让Web加速有保障
立即下载
使用CNFS搭建弹性Web服务
立即下载
WEB框架0day漏洞的发掘及分析经验分享
立即下载