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

相关文章
|
11天前
|
SQL Java
20:基于EL与JSTL的产品管理页-Java Web
20:基于EL与JSTL的产品管理页-Java Web
21 5
|
17小时前
【计网·湖科大·思科】实验一 熟悉仿真软件及访问WEB服务器
【计网·湖科大·思科】实验一 熟悉仿真软件及访问WEB服务器
3 0
|
1天前
|
存储 安全 数据安全/隐私保护
Web应用程序的会话管理是一种跟踪和识别特定用户与Web服务器之间交互的技术
Python Web开发中,会话管理用于跟踪用户与服务器交互,如Flask框架提供的内置功能。以下是一个简单示例:安装Flask后,设置应用密钥,通过session读写用户状态。例如,创建一个显示和设置用户名称的Web应用,用户提交的名字将保存在会话中。在生产环境中,应安全存储密钥,如使用环境变量。扩展会话管理可借助第三方库实现更多功能,但可能需更多配置。
6 2
|
3天前
|
Go
golang学习3,golang 项目中配置gin的web框架
golang学习3,golang 项目中配置gin的web框架
|
6天前
|
前端开发 搜索推荐 安全
AJAX和CSR(客户端渲染)是Web开发中常用的两种技术
【5月更文挑战第8天】AJAX提升用户体验,减轻服务器压力,但对搜索引擎不友好且增加开发复杂度,易引发安全问题。CSR提供快速响应和交互性,改善用户体验,但首屏加载慢,搜索引擎支持不足,同样面临安全挑战。两者各有适用场景,需按项目需求选择。
10 0
|
7天前
|
缓存 负载均衡 安全
深入探索Nginx高性能Web服务器配置与优化
【5月更文挑战第7天】本文深入探讨了Nginx的配置与优化,重点介绍了基础配置参数如`worker_processes`、`worker_connections`和`keepalive_timeout`,以及优化策略,包括使用epoll事件驱动模型、开启gzip压缩、启用缓存、负载均衡和安全配置。此外,还提到了性能调优工具,如ab、nginx-stats和nmon,以助于提升Nginx的性能和稳定性。
|
7天前
|
应用服务中间件 中间件 缓存
Web应急响应0基础讲解国赛信安管理与评估二阶段
Web应急响应0基础讲解国赛信安管理与评估二阶段
Web应急响应0基础讲解国赛信安管理与评估二阶段
|
7天前
|
开发框架 JSON .NET
.Net4.0 Web.config 配置实践
.Net4.0 Web.config 配置实践
|
11天前
|
存储 前端开发 安全
13:会话跟踪技术Session的深度应用与实践-Java Web
13:会话跟踪技术Session的深度应用与实践-Java Web
25 3
|
11天前
|
存储 前端开发 搜索推荐
12:会话跟踪技术Cookie的深度应用与实践-Java Web
12:会话跟踪技术Cookie的深度应用与实践-Java Web
24 4

热门文章

最新文章