Tomcat介绍
Tomcat 是什么?
Tomcat 是由 Apache 开发的一个 Servlet 容器,实现了对 Servlet 和 JSP 的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。
由于 Tomcat 本身也内含了一个 HTTP 服务器,它也可以被视作一个单独的 Web 服务器。但是,不能将 Tomcat 和 Apache HTTP 服务器混淆,Apache HTTP 服务器是一个用 C 语言实现的 HTTP Web 服务器;这两个 HTTP web server 不是捆绑在一起的。Tomcat 包含了一个配置管理工具,也可以通过编辑XML格式的配置文件来进行配置。
- jdk:工具箱子
java解释器
打包 war,jar
-
- java[一套生态]类库
circle 点 半径 函数
- java[一套生态]类库
- jdk –> openjdk(redhat已经使用移除了jdk)
简单的安装部署Tomcat服务:
yum –y install java-1.8.0-openjdk java-1.8.0-openjdk-headless
java –version #查看当前的版本
mv apache-tomcat-8.0.30 /usr/local/tomcat
ls /usr/local/tomcat
bin/ #主程序目录
lib/ #库文件目录
logs/ #日志目录
temp/ #临时目录
work/ #自动编译目录jsp代码转换servlet
conf/ #配置文件目录
webapps/ #页面目录
错误问题:
端口:8005 8009 8080 没有启动就慢慢等待
访问当前的页面:
IP:8080 #出现Tomcat就OK
写配置文件测试:
<html>
<body>
<center>
Now time is: <%=new java.util.Date()%> #显示当前的时间,调用java库
</center>
</body>
</html>
linux中的随机数据的区别:(当你的8005端口启动很慢的时候)
/dev/random
/dev/urandom #比上一个效率更加高效
为了提高运行的效果我们可以这么做:
mv /dev/random /dev/random.back
ln -s /dev/urandom /dev/random #这一更高效率
使用Tomcat部署虚拟主机:
实现内容:
- 实现两个基于域名的虚拟主机,域名分别为:www.aa.com和 www.bb.com
- 使用www.aa.com域名访问的页面根路径为/usr/local/tomcat/aa/ROOT
- 使用www.bb.com域名访问的页面根路径为/usr/local/tomcat/bb/base
- 访问www.aa.com/test时,页面自动跳转到/var/www/html目录下的页面
- 访问页面时支持SSL加密通讯
- 私钥、证书存储路径为/usr/local/tomcat/conf/cert
- 每个虚拟主机都拥有独立的访问日志文件
- 配置tomcat集群环境
案例实现一:
vim /usr/local/tomc/conf/server.xml
<Host name="www.aa.com" appBase="aa" unpackWARS="true" autoDeploy="true">
</Host>
<Host name="www.bb.com" appBase="bb" unpackWARS="true" autoDeploy="true">
</Host>
案例实现二:
mkdir /usr/local/tomc/bb/ROOT
echo "This is BBBB">/usr/local/tomc/bb/ROOT/index.html
mkdir /usr/local/tomc/aa/ROOT
echo "This is AAAA">/usr/local/tomc/bb/ROOT/index.html
重起服务
firefox http://www.aa.com/test
firefox http://www.bb.com/test
案例实现三:
vim /usr/local/tomc/conf/server.xml
<Host name="www.aa.com" appBase="aa" unpackWARS="true" autoDeploy="true">
</Host>
<Host name="www.bb.com" appBase="bb" unpackWARS="true" autoDeploy="true">
<Context path="" docBase="base" reloadable="true"/>
</Host>
mkdir /usr/local/tomc/bb/Base
echo "This is Base">/usr/local/tomc/bb/Base/index.html
重起服务
firefox http://www.bb.com/test
案例实现四:
<Host name="www.aa.com" appBase="aa" unpackWARS="true" autoDeploy="true">
<Contest path="/test" docBase="/var/www/html">
</Host>
<Host name="www.bb.com" appBase="bb" unpackWARS="true" autoDeploy="true">
<Context path="" docBase="base" reloadable="true"/>
</Host>
echo "This is /var/www/html">/var/www/html/index.html
重起服务
firefox http://www.aa.com/test
案例实现五、六:
1.配置SSL安全证书
keytool -genkeypair -alias tomcat -keyalg RSA -keystore /usr/local/tomcat/keystore
2.如果忘记就使用:
keytool --help #查看帮助
3.修改配置文件:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="/usr/local/tomc/keystore"
keystorePass="123456"/>
- 重起服务
- 凡事对8443端口进行访问的都是加密的端口
- firefox https://www.aa.com:8443/test
案例实现七:
vim /usr/local/tomc/conf/server.xml
<Host name="www.aa.com" appBase="aa" unpackWARS="true" autoDeploy="true">
<Context path="/test" docBase="/var/www/html/" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix=" aa_access" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
<Host name="www.bb.com" appBase="bb" unpackWARS="true" autoDeploy="true">
<Context path="" docBase="base" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix=" bb_access" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
1. 重起服务
2. ls /usr/local/tomcat/logs/
案例实现八:
序列号 | 内容
———— | ————-
项目|Nginx + 2台Tomcat 实现upstream反向代理
需求|LNMP主机一台,源码编译的时候开启–with-upstream。nginx版本高于1.0.92.两台Tomcat机器。openjdk+Tomcat,配置好测试网页
修改配置文件:
vim /usr/local/nginx/conf/nginx.conf
http{
upstream toms {
server tomcat的IP地址:8080;
server tomcat的IP地址:8080;
}
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://toms;
}
}
}
nginx -s reload
配置Tomcat主机:
yum –y install java-1.8.0-openjdk
yum –y install java-1.8.0-openjdk-headless
tar -xzf apache-tomcat-8.0.30.tar.gz
mv apache-tomcat-8.0.30 /usr/local/tomcat
配置测试网页:
实现案例一来配置
测试结果:
访问Nginx的IP查看是否跳转