安装部署Tomcat服务器(动态只支持java代码)
本案例要求部署Tomcat服务器,具体要求如下:
安装部署JDK基础环境
安装部署Tomcat服务器
创建JSP测试页面,文件名为test.jsp,显示服务器当前时间
然后客户机访问此Web服务器验证效果:
访问Tomcat服务器的8080端口,浏览默认首页
访问Tomcat服务器的8080端口,浏览默认测试页面
server是Tomcat实现的顶层元素,service是一个集合,它有一个或多个Connector以及一个Engine组成
Connector负责接收用户请求和向客户返回响应结果
Engine负责处理所有Connector所获得的客户请求,它处理在同一个service中所有Connector元素接收到的客户请求,它匹配请求和自己的虚拟
主机,并将请求发给对应的<Host>处理,默认的主机是localhost.
一个<Engine>元素可以包括多个<Host>元素,每个<Host>的元素定义一个虚拟主机,它包括一个或多个web应用
步骤一:部署服务器软件
1)使用RPM安装JDK环境
yum –y install java-1.8.0-openjdk //安装JDK
yum –y install java-1.8.0-openjdk-headless //安装JDK
java –version //查看JAVA版本
2)安装Tomcat
tar -xzf apache-tomcat-8.0.30.tar.gz
mv apache-tomcat-8.0.30 /usr/local/tomcat
ls /usr/local/tomcat
bin/ 主程序目录
lib/ 库文件目录
logs/ 日志目录
temp/ 临时目录
work/ 自动编译目录jsp代码转换servlet
conf/ 配置文件目录
webapps/ 页面目录
server.xml 主配置文件
context.xml 定义会话管理器、JDBC等
tomcat-users.xml 用户认证的账号和密码配置文件
步骤二:
1)创建测试JSP页面
vim /usr/local/tomcat/webapps/ROOT/test.jsp
<html>
<body>
<center>
Now time is: <%=new java.util.Date()%> //显示服务器当前时间
</center>
</body>
</html>
2)启动服务
/usr/local/tomcat/bin/startup.sh
/usr/local/tomcat/bin/shutdown.sh
或/usr/local/tomcat/bin/catalina.sh start/stop
步骤三:验证测试
1)服务器验证端口信息
netstat -nutlp |grep :8080 //查看java监听的端口
2)客户端浏览测试页面
firefox http://127.0.0.1:8080
firefox http://127.0.0.1:8080/test.jsp
使用Tomcat部署虚拟主机
实现两个基于域名的虚拟主机,域名分别为:www.aa.com和 www.bb.com
使用www.aa.com域名访问的页面根路径为/usr/local/tomcat/aa/ROOT
使用www.bb.com域名访问的页面根路径为/usr/local/tomcat/bb/ROOT
访问页面时支持SSL加密通讯
私钥、证书存储路径为/usr/local/tomcat/conf/cert
每个虚拟主机都拥有独立的访问日志文件
修改server.xml配置文件,创建两个域名的虚拟主机,修改如下两个参数块:
vim /usr/local/tomcat/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>
… …
修改server.xml配置文件,通过在<Host>中添加Context,我们也可以指定页面的根路径位置,默认为ROOT
<Context path="/test" docBase="/var/www/html/" />
生产SSL密钥与证书文件
keytool -genkeypair -alias tomcat -keyalg RSA -keystore /usr/local/tomcat/keystore
3.3 步骤
步骤一:配置服务器虚拟主机
1)修改server.xml配置文件,创建虚拟主机
vim /usr/local/tomcat/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>
2)创建虚拟主机对应的页面根路径
mkdir -p /usr/local/tomcat/{aa,bb}/ROOT
echo "AAA" > /usr/local/tomcat/aa/ROOT/index.html
echo "BBB" > /usr/local/tomcat/bb/ROOT/index.html
3)重启Tomcat服务器
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
4)客户端设置host文件,并浏览测试页面进行测试
vim /etc/hosts
… …
192.168.4.5 www.aa.com www.bb.com
firefox http://www.aa.com:8080/
firefox http://www.bb.com:8080/
步骤二:修改网站的首页目录(非必须)
1)使用docBase参数可以修改默认网站首页路径
vim /usr/local/tomcat/conf/server.xml
… …
<Host name="www.aa.com" appBase="aa" unpackWARS="true" autoDeploy="true">
<Context path="" docBase="base" /> Context 指定页面的根路径位置不填默认为ROOT
</Host> docBae指定路径位置
<Host name="www.bb.com" appBase="bb" unpackWARS="true" autoDeploy="true">
</Host>
… …
mkdir /usr/local/tomcat/aa/base
echo "BASE" > /usr/local/tomcat/aa/base/index.html
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
2)测试查看页面是否正确
firefox http://www.aa.com:8080/ //结果为base页面的内容
步骤三:跳转(非必须)
1)当用户访问http://www.aa.com/test打开/var/www/html目录下的页面
vim /usr/local/tomcat/conf/server.xml
… …
<Host name="www.aa.com" appBase="aa" unpackWARS="true" autoDeploy="true">
<Context path="/test" docBase="/var/www/html/" />
</Host>
<Host name="www.bb.com" appBase="bb" unpackWARS="true" autoDeploy="true">
</Host>
… …
echo "Test" > /var/www/html/index.html
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
2)测试查看页面是否正确
firefox http://www.aa.com:8080/test
返回/var/www/html/index.html的内容
步骤四:配置Tomcat支持SSL加密网站
1)创建加密用的私钥和证书文件
keytool -genkeypair -alias tomcat -keyalg RSA -keystore /usr/local/tomcat/keystore //提示输入密码为:123456
2)再次修改server.xml配置文件,创建支持加密连接的Connector
vim /usr/local/tomcat/conf/server.xml
… …
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
keystoreFile="/usr/local/tomcat/keystore" keystorePass="123456" clientAuth="false" sslProtocol="TLS" />
3)重启Tomcat服务器
/usr/local/tomcat/bin/catalina.sh stop
/usr/local/tomcat/bin/catalina.sh start
4)客户端设置host文件,并浏览测试页面进行测试
vim /etc/hosts
… …
192.168.4.5 www.aa.com www.bb.com
firefox https://www.test.com:8443/
firefox https://www.test.com:8443/
步骤四:为每个不同的虚拟web配置一个不同名字的Tomcat日志
1)为每个虚拟主机设置不同的日志文件
vim /usr/local/tomcat/conf/server.xml
<Host name="www.aa.com" appBase="aa" unpackWARS="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve"
prefix="aa_access" suffix=".log"
pattern="common"/>
</Host>
<Host name="www.bb.com" appBase="bb" unpackWARS="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve"
prefix="bb_access" suffix=".log"
pattern="common"/>
</Host>
2)重启Tomcat服务器
/usr/local/tomcat/bin/catalina.sh stop
/usr/local/tomcat/bin/catalina.sh start
3)查看服务器日志文件
ls /usr/local/tomcat/logs/
Tomcat优化
vim /usr/local/tomcat/bin/catalina.sh
<Connector port="8080">
protocol="HTTP/1.1"
maxThreads="1000" 客户请求最大线程数
minSpareThreads="100"
maxSpareThreads="1000"
enableLookups="false"
URlEncoding="utf-8"
acceptCount="1000" 监听端口队列最大数
本文转自夜流璃雨 51CTO博客,原文链接:http://blog.51cto.com/13399294/2061814,如需转载请自行联系原作者