关于Tomcat虚拟主机域名的设置--配置虚拟主机(Virtual Hosts)

来源:互联网 发布:python xpath爬虫 编辑:程序博客网 时间:2024/04/28 01:09

配置虚拟主机(Virtual Hosts
     
关于server.xml“Host”这个元素,只有在你设置虚拟主机的才需要修改。虚拟主机是一种在一个web服务器上服务多个域名的机制,对每个域名而言,都好象独享了整个主机。实际上,大多数的小型商务网站都是采用虚拟主机实现的,这主要是因为虚拟主机能直接连接到Internet并提供相应的带宽,以保障合理的访问响应速度,另外虚拟主机还能提供一个稳定的固定IP
  基于名字的
虚拟主机可以被建立在任何web服务器上,建立的方法就是通过在域名服务器(DNS)上建立IP地址的别名,并且告诉web服务器把去往不同域名的请求分发到相应的网页目录。在Tomcat中使用虚拟主机,需要设置DNS或主机数据。在server.xml中设置内容,如下:
server.xml 代码

    1.      <Server port="8005" shutdown="SHUTDOWN" debug="0">
2.     
<Service name="Tomcat-Standalone">
3.     
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port
="80" minProcessors="5" maxProcessors="75" enableLookups="true" redirectPort="8443"/>
4.     
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8443"
minProcessors
="5" maxProcessors="75" acceptCount="10" debug="0" scheme="https" secure="true"/>
5.     
<Factory className="org.apache.coyote.tomcat4.CoyoteServerSocketFactory" clientAuth="false"
protocol="TLS" />
6.     
<Connector>
7.     
<Engine name="Standalone" defaultHost="localhost" debug="0">
8.    

9.     
<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true">
10.  
<Context path="" docBase="ROOT" debug="0"/>
11.  
<Context path="/orders" docBase="/orders" debug="0" reloadable="true" crossContext="true">
12.  
<Context>
13.  
<Host>
14.  

15.  
<Host name="www.yujiaxin.com" appBase="webapps" unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
16.  
<Context docBase="jspwebsite" path="" reloadable="true" />
17.  
<Host>
18.  

19.  
<Engine>
20.  
<Service>
21.  
<Server>

  Tomcatserver.xml文件,在初始状态下,只包括一个虚拟主机,但是它容易被扩充到支持多个虚拟主机。增加虚拟主机只要增加完整Host标签即可。每一个Host元素必须包括一个或多个context元素,所包含的context元素中必须有一个是默认的context,这个默认的context的显示路径应该为空(例如,path="")捆绑的主机名以多个Alias列出即可.
     

1.        <Engine defaultHost="localhost" name="Catalina">   

2.        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>   

3.        <Host appBase="webapps" name="localhost">   

4.        <Alias>itmao.jaxmao.org</Alias>   

5.        <Alias>google.jaxmao.org</Alias>   

6.        <Alias>bluepure.jaxmao.org</Alias>   

7.        <Alias>aaa.jaxmao.org</Alias>   

8.        </Host>   

9.        <Host appBase="webapps" name="google.com">   

10.     <Alias>www.google.org</Alias>   

11.     <Alias>google.google.org</Alias>   

12.     <Alias>bluepure.google.org</Alias>   

13.     </Host>  

14    </Engine>

也可以在后台管理界面配置:http://localhost:8080/admin
更改后的结果如下:
<Connector port="80" maxHttpHeaderSize="8192"   maxThreads="150" minSpareThreads="25" maxSpareThreads="75"   enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GB2312"/>

<Engine name="Catalina" defaultHost="ycoe.vicp.net">

<Host name="ycoe.vicp.net" appBase="webapps" unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">   


再添加<Host>元素:<Host name="yvor.vicp.net" appBase="webapps" unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"> <Context docBase="D:/WORKS/YCOE/ycoe" path="/" reloadable="true"
workDir="D:/WORKS/YCOE/Tomcat/work/ycoe"></Context>
</Host>

这里是设置我们的第二个虚拟网站的域名
------------------------------------------------------------------
但不能用http://ycoe.vicp.nethttp://yvor.vicp.net访问
xml
代码

<Engine defaultHost="ycoe.vicp.net" name="Catalina">

<Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>

<Host name="ycoe.vicp.net" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false" >

<Alias>yvor.vicp.net</Alias>

<Context docBase="D:/WORKS/YCOE/ycoe" path="/" reloadable="true" workDir="D:/WORKS/YCOE/Tomcat/work/ycoe"></Context>

</Host>   

</Engine>

注意:
先确定正确解析当前的ip,再来修改Tomcat