配置WEB站点的虚拟目录和配置虚拟主机

本文详细介绍了如何配置Web服务器的虚拟目录和虚拟主机。内容包括虚拟目录的概念和原理,设置Web站点根目录的方法,使用<Context>元素创建虚拟子目录,浏览器访问Web资源的过程,以及虚拟主机的实现原理和好处。特别提到了Tomcat中配置虚拟目录和虚拟主机的具体步骤,涉及server.xml文件和应用基准目录的设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

虚拟WEB目录的概念及其原理

如果想让某台计算机上的一个目录内容,能被外面的web浏览器通过http协议访问,该怎么办呢?

首先要在这台计算机上安装和启动一个web服务器软件

其次还要将该目录映射成一个web站点目录。这个web站点目录通常称为虚拟目录。

一个web站点上只能有一个虚拟目录的根目录,其他的虚拟目录都必须是该目录的子目录。

一般根目录用“/”符号表示,根目录和该根目录下的子目录或资源文件也以“/”符号进行分割。

{

一个文件系统目录可以被映射成为多个虚拟Web目录

虚拟Web子目录名称可以是多级目录结构的形式

Tomcat按照最长路径匹配原则处理请求的URL

}

 

设置WEB站点的根目录

<Host>元素的appBase属性所设置的应用程序基准目录中的ROOT子目录

使用server.xml文件中的<Context>元素

         <Contextpath="" docBase="d:\test" debug="0"/> 

设置WEB站点的虚拟子目录

使用server.xml文件中的<Context>元素

         <Contextpath="/it315" docBase="d:\myweb" debug="0"/>

特定目录中的xml文件中包含<Context>元素

Tomcat 4.x的<Tomcat主目录>/webapps目录

Tomcat 5.x的<Tomcat主目录>/conf/<引擎名>/<主机名> 

<Host>元素的appBase属性所设置的应用程序基准目录中的含有WEB-INF/web.xml文件的子目录

<Host>元素的appBase属性所设置的应用程序基准目录中的war文件

部署描述符与目录的默认网页

部署描述符文件

<WEB应用程序>/WEB-INF/web.xml

<Tomcat主目录>/conf/web.xml

目录的默认网页文件

         <welcome-file-list>

                   <welcome-file>index.html</welcome-file>

                   <welcome-file>index.htm</welcome-file>

                   <welcome-file>index.jsp</welcome-file>

         </welcome-file-list>

浏览器访问WEB资源的过程

URL

格式: http://IP地址(或主机名):端口号/目录名称/网页文件名称

举例: http://www.vshoping(192.168.0.1).tk/book/java.html

 

虚拟主机及实现原理

目的:

         在一台计算机上创建多个WEB站点,并为每个WEB站点设置不同的主目录和虚拟子目录,每个WEB站点作为各自独立的网站分配给不同的公司或部门。

好处:

         多个公司或部门的网站就可以共用同一台计算机,而用户感觉每个公司和部门都有各自独立的网站。多个没有实力在Internet上架设自己专用服务器的中小公司可以联合租用一台WEB服务器,对外提供各自的WEB服务而互不影响。

原理:

WEB服务器上的每个WEB站点必须设置有不同的标识信息

WEB浏览器发出的连接和请求信息中包含WEB站点的标识信息

WEB站点的标识信息:

         IP地址、端口号、主机名

 

基于主机名的虚拟主机

根据请求的消息来实现server.xml中的设置,也就是<Host></Host>

基于端口号的虚拟主机

WEB浏览器要访问基于主机名的虚拟主机时,在访问URL中必须采用主机名,而不能采用IP地址。

在整个网络系统中建立主机名与IP地址的映射关系,即必须将主机名添加到名称解析系统。

使用客户机本地的Hosts 文件,例如,c:\winnt\System32\Drivers\Etc\Hosts

使用DNS(Domain Name System,域名系统)服务器   

一个<Connector>元素用于配置一个对外的连接器,对于WEB服务器上的每一个监听端口号,都要使用一个单独的<Connector>元素。

一个<Connector>元素对应的连接器必须有一个相关的<Engine>元素,将一个或多个<Connector>元素与某个<Engine>元素相关联的方式就是将它们嵌套在同一个<Service>元素中。

         <Servicename="…">

                   <Connectorport="…" …/>

                   <Enginename="…" >

                            <Hostname="…" >

                                     <Context…>

                                     </Context>

                            </Host>             

                   </Engine>

         </Service>

基于IP地址的虚拟主机

HTTP 1.0不支持Host头字段,在保证所有站点统一使用端口号80的情况下,人们早期只能采用不同的IP地址来建立虚拟主机。

HTTP 1.1可以使用不同的主机名来建立多个WEB站点后,虚拟主机业务提供商一般不再建立基于IP地址的虚拟主机。

Tomcat没有提供建立基于IP地址的虚拟主机方式。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值