tomcat虚拟主机(tomcat虚拟主机可以共享变量吗)
本文目录一览:
- 1、tomcat在配置虚拟主机的时候,导致startup.bat闪退,如何解决
- 2、tomcat 8.0怎样设置多个虚拟主机
- 3、Tomcat虚拟主机配置
- 4、Tomcat 与Nginx
- 5、如何在虚拟主机上安装jdk和tomcat
tomcat在配置虚拟主机的时候,导致startup.bat闪退,如何解决
点击startup.bat会闪退,编辑startup.bat,在最后一行加入 pause ,然后保存,再次运行,就可以看到闪退的原因
出现这个的原因是因为tomcat没有配置启动的环境,右键电脑,点击属性,点击高级系统设置
点击系统环境变量,,新建环境变量
步骤阅读
4
添加一个环境变量为TOMCAT_HOME ,值为tomcat的解压目录
5
再次编辑startup.bat ,去掉刚刚添加的pause,双击后,即可进行安装,不会再次闪退
tomcat 8.0怎样设置多个虚拟主机
配置方法如下:
1、在tomcat安装目录,与webapps目录平级的地方,建立3个文件夹,分别是webapps_1/war、webapps_2/war、webapps_3/war,把3个war包分别放入3个war文件夹中。
这里不可以使用tomcat自带的webapps目录,不可以把3个war包放入同一个webapps文件夹,否会导致tomcat加载多次web项目(本例是3次),造成重复启动。
2、修改sever.xml,内容如下:
实际上context也可以去掉,那么需要将webapps_1/ROOT、webapps_2/ROOT、webapps_3/ROOT,也就是说这三个目录结构和webapps结构相同,项目分别放到这是三个目录中:
3、关键属性说明:
appBase="webapps_1" 的作用是,指定应用程序(网站)的基本路径 ,这里可以存放多个程序(网站)。一般是相对路径,相对于tomcat的安装目录。
aaa.com 的作用是,为一个Host,绑定多个域名;也就是说可以在浏览器地址中输入:aaa.com访问,但是不带www; 所以,如果想要加上www,需要301重定向,比如urlrewritefilter.jar.
windows环境(tomcat6.0.18):如果设置为path="",tomcat会在webappa_1目录中自动生成ROOT目录(里面有还有与aaa目录一样一样的内容),要设置为path=""。
Linux环境(tomcat6.0.33):如果设置为path="",tomcat不会在webappa_1目录中自动生成ROOT目录。而是生成 aaa目录。要设置为path="/"。(有待试验,今天凌晨验证到关键时刻,试验环境出问题了,未继续)。
4、运行过程
tomcat启动时,解压webapps_1/war/aaa.war包到webapps_1/ROOT目录中。
Tomcat虚拟主机配置
站点根目录为: c:\wwwroot
站点一目录为: c:\wwwroot\aaa , 域名为
站点二目录为: c:\wwwroot\bbb , 域名为
站点三目录为: c:\wwwroot\ccc , 域名为
Tomcat 配置文件为: tomcat路径/conf/server.xml
站点根目录为: c:\wwwroot
站点一目录为: c:\wwwroot\aaa , 域名为
站点二目录为: c:\wwwroot\bbb , 域名为
Tomcat 配置文件为: tomcat路径/conf/server.xml
注: 若需不同域名访问将 Host name="localhost" appBase="c:\wwwroot" unpackWARs="true" autoDeploy="true" name 字段改为对应域名即可,多个域名可在 Host 标签内添加一个或多个 Alias;/Alias 即可。其中 Connector port、defaultHost、Hostname、appBase、docBase、日志 prefix 为你实际的即可。
a. 可以将不同 service 组件的 Engine name 都指定成 Catalina。
b. 可以将不同 service 组件的 Host appBase 指定成默认的 webapps。
c. Context docBase="/data/java/appstore-web" path="" reloadable="true" / 这个用于配置根路径项目,也就是 /data/java/appstore-web 包访问时是通过 ip:port 来访问,而不是传统的 ip:port/app
假设:
第一个tomcat文件夹为tomcat8-1,路径为 /home/tomcat8-1/
第二个tomcat文件夹为tomcat8-2,路径为 /home/tomcat8-2/
分别修改 tomcat 文件夹 /conf 目录下 server.xml 的监听端口为不同端口。
分别启动 tomcat 文件夹 /bin 目录下的 startup.sh 启动tomcat,停止同上文。
即可运行多个tomcat。
注:根据官方文档 tomcat8.5 且 JAVA7 及其以上才支持 SNI。如果 tomcat 版本较低且需要绑定多个域名情况下,建议使用反向代理方式部署 HTTPS。
在 Connector port="8080" 配置字段下新增 443 端口监听设置即可。
注:若IIS反向代理tomcat绑定https时,选择上启用SSL卸载。以免tomcat未配置HTTPS访问的情况下请求得不到正常响应。
如:
修改配置文件 tomcat路径/conf/tomcat-users.xml :
Tomcat 与Nginx
Nginx是一个HTTP服务器 ,可以将服务器上的静态文件(如HTML、图片)通过HTTP协议展现给客户端。
客户端本来可以 直接 通过HTTP协议访问某网站应用服务器,如果网站管理员在中间加上一个Nginx,客户端请求Nginx,Nginx请求应用服务器,然后将结果返回给客户端。
负载均衡: 将 相同的应用 部署在多台服务器上,将大量用户的请求分配给多台机器处理。同时带来的好处是, 其中一台服务器万一挂了,只要还有其他服务器正常运行 ,就不会影响用户使用。
虚拟主机: 如将 和 两个网站部署在同一台服务器上,两个域名解析到同一个IP地址,但是用户通过两个域名却可以打开两个完全不同的网站,互相不影响,就像访问两个服务器一样,所以叫两个虚拟主机。
在服务器8080和8081分别开了一个应用,客户端通过不同的域名访问,根据server_name可以反向代理到对应的应用服务器。
动态静态资源分离:
之前开发web方面的程序时候我们习惯将 html、css等资源文件也放置于Tomcat中 ,用户访问后tomcat需要将请求的这些静态资源文件一并返回给用户。
再者如果有多台同业务逻辑的tomcat服务器的话,同样的资源还需要在每个服务器上放一份,同时也增加了tomcat服务器的网络IO。
如果我们只讲JSP之类的请求交给tomcat, 在代理服务器上存放静态资源 ,当用户的请求非动态资源的时候, 我们完全可以将代理服务器的静态资源直接返回给用户,而不去增大Tomcat的压力 ,
tomcat只需要 负责逻辑处理 和 动态资源的加载 就可以了。
Tomcat的高并发性能很弱 ,所以在处理 静态请求的时候,我们就抛给Nginx处理 ,而Tomcat专门处理动态请求。
Nginx和Tomcat结合方式 :
WEB-INF
WEB-INF是Java的WEB应用的安全目录。所谓安全就是客户端无法访问, 只有服务端可以访问的目录 。
如何在虚拟主机上安装jdk和tomcat
这就要看你的虚拟机上装了什么系统,在oracle和tomcat官网上分别下载对应版本的jdk和tomcat,因为不知道你装的是什么系统,不好说方法,具体安装方法可以上网查,或者看视频。
tomcat虚拟主机的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于tomcat虚拟主机可以共享变量吗、tomcat虚拟主机的信息别忘了在易优之家进行查找喔。
发表评论
暂时没有评论,来抢沙发吧~