使用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

[[email protected] ~]# 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)创建测试网页

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

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

[[email protected] ~]# 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
[[email protected] ~]# kill -9 1833  //杀死
[[email protected] ~]# 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
[[email protected] ~]# /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.
[[email protected] ~]# 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:\Windows\System32\drivers\etc\hosts。添加两行

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

  使用浏览器查看

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

 1)修改配置文件server.xml

[[email protected] ~]# 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)创建测试网页

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

  重启tomcat

[[email protected] ~]# !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
[[email protected] ~]# kill -9 2345
[[email protected] ~]# !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
[[email protected] ~]# /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.
[[email protected] ~]# !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

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

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

 3)测试

  Windows修改hosts文件,文件地址:C:\Windows\System32\drivers\etc\hosts。添加两行:

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

原文地址:https://www.cnblogs.com/diantong/p/11109384.html

时间: 2024-11-10 13:51:40

使用Tomcat搭建基于域名的虚拟机的相关文章

linux 搭建基于域名的虚拟主机

搭建基于域名的虚拟主机 1.首先为两个网站搭建dns服务器,并新建区域,分别为:www.benet.com和www.accp.com 1)修改配置文件 2)修改数据文件 2)重启dns服务 2.搭建两个网站 1)准备网页 2)打开虚拟主机配置文件,修改配置文件 添加以下内容 3)修改主配置文件,启用虚拟主机 Vi /usr/local/httpd/conf/httpd.conf 去掉前面的#号 4)重新启动httpd服务 5)在客户端上访问虚拟web主机 到此为止,基于域名的虚拟主机搭建完毕 !

nginx的简介和搭建基于域名的虚拟主机

今天就来和大家讲一讲nginx和基于域名搭建虚拟主机 简介 Nginx (engine x) 是一个高性能的Web服务器和反向代理服务器,也是一个IMAP/POP3/SMTP服务器 俄罗斯程序员Igor Sysoev于2002年开始Nginx是增长最快的Web服务器,市场份额已达33.3%全球使用量排名第二2011年成立商业公司 Nginx源码结构: 代码量大约11万行C代码源代码目录结构core (主干和基础设置)event (事件驱动模型和不同的IO复用模块)http (HTTP服务器和模块

第二章 Web网站服务(二)——搭建基于域名的虚拟web主机

防伪码:自古逢秋悲寂寥,我言秋日胜春朝 web网站服务(二) 一.httpd服务的访问控制 作用: a.控制对网站资源的访问 b.为特定的网站目录添加访问授权 常用访问控制方式: a.客户机地址限制 b.用户授权限制 二.基于客户端地址的访问控制 Order配置项,定义控制顺序 先允许后拒绝,默认拒绝所有:Order allow,deny 先拒绝后允许,默认允许所有:Order deny,allow Allow.Deny配置项,设置允许或拒绝的地址 Deny from address1 addr

搭建基于域名虚拟主机

修改主配置文件 # cd /etc/httpd/conf.d/ # vim vhost.conf <VirtualHost *:80> DocumentRoot /var/www/wwwroot/myweb ServerName www.myweb.com ErrorLog logs/www.myweb.com-error_log CustomLog logs/www.myweb.com-access_log common </VirtualHost>

Nginx搭建基于域名的虚拟主机

知识部分Nginx简介:Nginx是一款轻量级.高性能的http和反向代理服务器,由俄罗斯的lgor Sysoev开发.较之Apache,Nginx具有更稳定.更高效的优点,在并发处理量方面也具有较大的优势,理论上可以同时处理30000到50000个请求.国内企业,像淘宝.京东.百度用的都是Nginx服务器作为网站服务器.操作部分1.首先挂载系统盘,yum安装pcre-devel和zlib-devel两个组件.yum配置如下2.创建Nginx运行的用户和组.(Nginx默认以nobody身份运行

tomcat 搭建

什么是Tomcat 官方网站:http://tomcat.apache.org/ Tomcat 是 Apache 软件基金会(Apache Software Foundation)的 Jakarta 项目中的一个核心项目,由 Apache.Sun 和其他一些公司及个人共同开发而成.由于有了 Sun 的参与和支持,最新的 Servlet 和JSP 规范总是能在 Tomcat 中得到体现,Tomcat 5 支持最新的 Servlet 2.4 和 JSP 2.0 规范.因为Tomcat 技术先进.性能

httpd基于域名的虚拟主机

搭建基于域名的网站虚拟主机. web虚拟主机服务器 centos6.5 192.168.200.202 搭建基于域名的虚拟主机 dns.ftp服务器 centos6.5 192.168.200.254 提供DNS解析,ftp下载 1:在dns服务器上设置dns解析: 修改dns的配置文件,设置区域文件名称和所在位置. [[email protected] ~]# cd /var/named/chroot/etc/ [[email protected] etc]# vi named.conf  [

.net项目架构改造之搭建基于java环境配置一览【上】

最近公司做了一个项目,需要嵌套在千牛的客户端上,项目代码必须上阿里的聚石塔,全程采用基于docker的自动化部署,我们的项目是基于.net架构.很遗憾 的是基于windows的docker上部署在访问淘宝自身的api接口,总是会时不时的各种超时,阿里小二也整个一个星期没解决,给出的理由很简单,基于windows的docker 的服务也才引入不久,还有稳定性问题. 在选择docker镜像时把自己技术的tomcat顶的高高在上,卧槽,双重1w点暴击,预计.net架构用在这上面后面会有各种坑... 改

linux web服务器(二) 基于域名,ip,端口的web虚拟主机

linux web服务器(二) 1 :搭建基于域名的虚拟主机     首先为两个网站搭建dns服务器,并新建区域,分别为:www.goole.com和www.baidu.com     2) 修改配置文件 3)    修改数据文件 4)    重启dns服务 5)    搭建两个网站 6:准备网页 7)打开虚拟主机配置文件,修改配置文件 8: 添加以下内容 9)    修改主配置文件,启用虚拟主机       Vi /usr/local/httpd/conf/httpd.conf  去掉前面的#