zoukankan      html  css  js  c++  java
  • 使用Tomcat搭建基于域名的虚拟机

      Tomcat搭建基于域名的虚拟主机,实际就是实现了同一个Tomcat部署多个项目(网站/应用程序)。端口可以使用同一个,也可以不同。

    (1).在tomcat的conf文件夹下存在Tomcat的配置文件:

      catalina.policy是Tomcat安全机制的配置文件,默认情况下Tomcat是非安全模式运行的,如果需要使用安全模式,那么需要在启动命令行中添加-security参数。

      catalina.properties是Catalina的配置文件,主要有安全设置、类加载设置、不需要扫描的类设置、字符缓存设置四大块。

      context.xml是在Tomcat 6.0时从server.xml中分离出来,设置Tomcat的数据源,主要用于连接数据库,可以被Tomcat动态加载。

      jaspic-providers.xml:Tomcat实现了JASPIC 1.1 Maintenance Release B标准,并通过这个配置文件集成第三方 JASPIC 身份验证。

      jaspic-providers.xsd定义了jaspic-providers.xml所使用到的标签。

      logging.properties是Tomcat的日志配置文件。

      server.xml是Tomcat的主配置文件,设置与服务相关的参数(例如路径、端口),该文件不支持热更新,每次修改完成之后需要重启Tomcat服务器才能生效。

      tomcat-users.xml是Tomcat的用户信息配置文件,在Tomcat Manager中使用。

      tomcat-users.xsd定义了tomcat-users.xml 所使用到的标签。

      web.xml是所有Web项目的缺省配置文件。

    (2).使用同一个Tomcat,同一个端口,部署多个项目

     1)修改配置文件server.xml

    [root@youxi1 ~]# vim /usr/local/tomcat8.5/conf/server.xml
    //在已有的<Host>标签后面添加测试<Host>标签。要和原有的标签处于同一标签范围内(<Engine>标签内部)
          <Host name="www.youxi1.com" appBase="/var/www">
            <Context path="" docBase="/var/www/youxi1"/>
          </Host>
          <Host name="www.youxi2.com" appBase="/var/www">
            <Context path="" docBase="/var/www/youxi2"/>
          </Host>
    

      说明:<Host>标签中name指定域名;appBase指定项目的基本目录(发布目录),可以是绝对路径,也可以是相对路径,相对路径是基于Tomcat的安装目录。

         <Context>标签中path指定域名的虚拟目录,如果是空代表的就是/,如果path="test",那么访问时就是[ 域名 | [IP:端口] ]/test;docBase指定实际存放目录,可以是绝对路径,也可以是相对路径,相对路径基于当前<Host>标签的appBase参数。

     2)创建测试网页

    [root@youxi1 ~]# mkdir -p /var/www/{youxi1,youxi2}
    [root@youxi1 ~]# echo "This is One." > /var/www/youxi1/index.html
    [root@youxi1 ~]# echo "This is Two." > /var/www/youxi2/index.html
    

      如果写过启动脚本的,可以使用启动脚本重启。如果没有写过启动脚本,建议kill掉tomcat再启动,如下:

    [root@youxi1 ~]# ps aux | grep "/usr/local/tomcat8.5"  //这是为了指定到想要重启的Tomcat,防止有多个Tomcat在运行
    root       1833 98.0  5.8 2256888 57996 pts/0   Sl   11:44   0:02 /usr/local/jdk1.8.0_191/bin/java -Djava.util.logging.config.file=/usr/local/tomcat8.5/conf/logging.properties
     -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
     -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat8.5/bin/bootstrap.jar:/usr/local/tomcat8.5/bin/tomcat-juli.jar
     -Dcatalina.base=/usr/local/tomcat8.5 -Dcatalina.home=/usr/local/tomcat8.5 -Djava.io.tmpdir=/usr/local/tomcat8.5/temp org.apache.catalina.startup.Bootstrap start
    root       1846  0.0  0.0 112720   992 pts/0    R+   11:45   0:00 grep --color=auto /usr/local/tomcat8.5
    [root@youxi1 ~]# kill -9 1833  //杀死
    [root@youxi1 ~]# ps aux | grep "/usr/local/tomcat8.5"  //查看是否杀死
    root       1881  0.0  0.0 112720   992 pts/0    R+   11:45   0:00 grep --color=auto /usr/local/tomcat8.5
    [root@youxi1 ~]# /usr/local/tomcat8.5/bin/startup.sh  //调用启动脚本
    Using CATALINA_BASE:   /usr/local/tomcat8.5
    Using CATALINA_HOME:   /usr/local/tomcat8.5
    Using CATALINA_TMPDIR: /usr/local/tomcat8.5/temp
    Using JRE_HOME:        /usr/local/jdk1.8.0_191
    Using CLASSPATH:       /usr/local/tomcat8.5/bin/bootstrap.jar:/usr/local/tomcat8.5/bin/tomcat-juli.jar
    Tomcat started.
    [root@youxi1 ~]# ps aux | grep "/usr/local/tomcat8.5"  //查看是否开启
    root       1891 93.0  5.8 2257916 58068 pts/0   Sl   11:45   0:02 /usr/local/jdk1.8.0_191/bin/java -Djava.util.logging.config.file=/usr/local/tomcat8.5/conf/logging.properties
     -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
     -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat8.5/bin/bootstrap.jar:/usr/local/tomcat8.5/bin/tomcat-juli.jar
     -Dcatalina.base=/usr/local/tomcat8.5 -Dcatalina.home=/usr/local/tomcat8.5 -Djava.io.tmpdir=/usr/local/tomcat8.5/temp org.apache.catalina.startup.Bootstrap start
    root       1905  0.0  0.0 112720   992 pts/0    R+   11:45   0:00 grep --color=auto /usr/local/tomcat8.5

     3)测试

      修改Windows上的hosts文件,模拟域名解析。这一步实际是DNS服务器解析域名。文件地址:C:WindowsSystem32driversetchosts。添加两行

    192.168.5.101 www.youxi1.com
    192.168.5.101 www.youxi2.com
    

      使用浏览器查看

    (3).使用同一个Tomcat,不同端口,部署多个项目

     1)修改配置文件server.xml

    [root@youxi1 ~]# vim /usr/local/tomcat8.5/conf/server.xml
    //首先在<service>标签内找到<Connector>标签,复制粘贴到下方,然后修改port参数的值。
        <Connector port="8081" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   redirectPort="8443" />
        <Connector port="8082" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   redirectPort="8443" />
    
    //再到当前<service>标签内的<Engine>标签内,找到<Host>标签,添加如下行
          <Host name="www.youxi3.com" appBase="/var/www" port="8081">
            <Context path="" docBase="/var/www/youxi3"/>
          </Host>
          <Host name="www.youxi4.com" appBase="/var/www" port="8082">
            <Context path="" docBase="/var/www/youxi4"/>
          </Host>
    

      <Host>标签相较于同一端口配置的<Host>标签,多了一个端口参数port。

     2)创建测试网页

    [root@youxi1 ~]# mkdir -p /var/www/youxi{3,4}
    [root@youxi1 ~]# echo "This is Three" > /var/www/youxi3/index.html
    [root@youxi1 ~]# echo "This is Four" > /var/www/youxi4/index.html 
    

      重启tomcat

    [root@youxi1 ~]# !ps
    ps aux | grep "/usr/local/tomcat8.5"
    root       2345  0.9  9.8 2325048 98620 ?       Sl   12:11   0:11 /usr/local/jdk1.8.0_191/bin/java -Djava.util.logging.config.file=/usr/local/tomcat8.5/conf/logging.properties
     -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
     -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat8.5/bin/bootstrap.jar:/usr/local/tomcat8.5/bin/tomcat-juli.jar
     -Dcatalina.base=/usr/local/tomcat8.5 -Dcatalina.home=/usr/local/tomcat8.5 -Djava.io.tmpdir=/usr/local/tomcat8.5/temp org.apache.catalina.startup.Bootstrap start
    root       2546  0.0  0.0 112720   992 pts/0    R+   12:32   0:00 grep --color=auto /usr/local/tomcat8.5
    [root@youxi1 ~]# kill -9 2345
    [root@youxi1 ~]# !ps
    ps aux | grep "/usr/local/tomcat8.5"
    root       2549  0.0  0.0 112720   992 pts/0    R+   12:32   0:00 grep --color=auto /usr/local/tomcat8.5
    [root@youxi1 ~]# /usr/local/tomcat8.5/bin/startup.sh
    Using CATALINA_BASE:   /usr/local/tomcat8.5
    Using CATALINA_HOME:   /usr/local/tomcat8.5
    Using CATALINA_TMPDIR: /usr/local/tomcat8.5/temp
    Using JRE_HOME:        /usr/local/jdk1.8.0_191
    Using CLASSPATH:       /usr/local/tomcat8.5/bin/bootstrap.jar:/usr/local/tomcat8.5/bin/tomcat-juli.jar
    Tomcat started.
    [root@youxi1 ~]# !ps
    ps aux | grep "/usr/local/tomcat8.5"
    root       2559 91.6  5.8 2255860 58460 pts/0   Sl   12:32   0:02 /usr/local/jdk1.8.0_191/bin/java -Djava.util.logging.config.file=/usr/local/tomcat8.5/conf/logging.properties
     -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
     -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat8.5/bin/bootstrap.jar:/usr/local/tomcat8.5/bin/tomcat-juli.jar
     -Dcatalina.base=/usr/local/tomcat8.5 -Dcatalina.home=/usr/local/tomcat8.5 -Djava.io.tmpdir=/usr/local/tomcat8.5/temp org.apache.catalina.startup.Bootstrap start
    root       2572  0.0  0.0 112720   992 pts/0    S+   12:32   0:00 grep --color=auto /usr/local/tomcat8.5
    

      如果开启防火墙需要添加端口号

    [root@youxi1 ~]# systemctl start firewalld.service 
    [root@youxi1 ~]# firewall-cmd --permanent --zone=public --add-port={8081,8082}/tcp
    success
    [root@youxi1 ~]# firewall-cmd --reload
    success
    [root@youxi1 ~]# firewall-cmd --permanent --zone=public --list-ports 
    8080/tcp 8081/tcp 8082/tcp
    

     3)测试

      Windows修改hosts文件,文件地址:C:WindowsSystem32driversetchosts。添加两行:

    192.168.5.101 www.youxi3.com
    192.168.5.101 www.youxi4.com
    

      Windows上浏览器查看

      注意:还可以复制整个<service>标签,进行修改。

    参考:https://blog.csdn.net/dreamstar613/article/details/75282962/

       https://blog.csdn.net/ving_suixin/article/details/80333098

       https://blog.csdn.net/Apeopl/article/details/81164312

  • 相关阅读:
    kvm介绍
    正式班D24
    正式班D23
    正式班D21
    正式班D20
    正式班D19
    正式班D18
    正式班D17
    正式班D16
    正式班D15
  • 原文地址:https://www.cnblogs.com/diantong/p/11109384.html
Copyright © 2011-2022 走看看