tomcat
JDK Java Development Kit
Java语言软件开发工具包
java运行环境 java工具 java基础的类库
JRE Java Runtime Environment
Java运行环境
java虚拟机(jvm) java核心类库和支持文件
JRE是JDK的子集 不包含开发工具
url:
协议 主机 端口号 路径
http://www.192.168.4.1:8080/test.jsp
使用RPM安装JDK环境 #一般都已经装好了
#yum –y install java-1.8.0-openjdk #安装JDK
#yum –y install java-1.8.0-openjdk-headless #安装JDK
#java –version #查看JAVA版本
安装Tomcat
#tar -xzf apache-tomcat-8.0.30.tar.gz
mv apache-tomcat-8.0.30 /usr/local/tomcat #绿色软件cp来就可以用
ls /usr/local/tomcat
bin/ #主程序目录
lib/ #库文件目录
logs/ #日志目录
temp/ #临时目录
work/ #自动编译目录jsp代码转换servlet
conf/ #配置文件目录
webapps/ #页面目录
创建测试JSP页面
#vim /usr/local/tomcat/webapps/ROOT/test.jsp
<html>
<body>
<center>
Now time is: <%=new java.util.Date()%> #显示服务器当前时间
</center>
</body>
</html>
查看状态
#netstat -anput | grep java
主配置文件 #根目录=/usr/local/tomcat/
注意: 配置文件严格区分大小写!
#vim /usr/local/tomcat/conf/server.xml
... #主配置文件的框架#
<Server> #表示服务器
<Service> #提供服务
<Connect port=8080 /> #服务端口
<Engine default=localhost> #提供的网站 default后为(IP访问)默认返回的网站
<Host name="www.a.com" appBase="a" unpackWARS="true" autoDeploy="true">
#一个host表示一个虚拟网站
<Context path="" docBase="base" /> #指定a/base为网页文件默认ROOT非必须配置
<Context path="/test" docBase="/var/www/html" />
#类似于rewrite 当访问/test就跳转到/var/www/html/index.html 页面上
</Host>
<Host name="www.b.com" appBase="b" unpackWARS="true" autoDeploy="true">
</Engine>
</Service>
</Server>
...
context.xml文件
定义会话管理器,JDBC等
tomcat-users.xml文件
用户认证的帐号密码配置文件
Tomcat-SSL加密网站
创建加密用的私钥和证书文件
#keytool -genkeypair -alias tomcat -keyalg RSA -keystore /usr/local/tomcat/keystore
#公私钥在一个文件所以要设置密码 按y确认
genkeypair 生成
alias 定义名称
keyalg 密钥算法(DSA,RSA)
keystore 文件另存为
tomcat虚拟网站不和端口绑定关系(不是一一对应的)加密是对端口加密
vim /usr/local/tomcat/conf/server.xml
模版在85-87行
... #每个参数间至少有个空格间隔也可以是回车换行
<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" />
... #做一次 之后所有网站通过8443端口都可以加密
重启服务
#/usr/local/tomcat/bin/catalina.sh stop
#/usr/local/tomcat/bin/catalina.sh start
服务优化
修改Connector属性
program 程序
progress 进程
thread 线程
一个程序可以有多个进程,一个进程可以有多个线程。
<Connector port="8080" protocol="HTTP/1.1"
maxThreads="1000" #客户端最大线程数 默认一两百
minSpareThreads="100" 最小线程数
maxSpareThreads="1000" 最大闲置线程数
enableLookups="false" 关闭DNS查询
URIEncoding="utf-8"
acceptCount="1000" #监听端口等待列队最大数 默认100
connectionTimeout="20000" #网络连接超时时间 ms
redirectPort="8443" /> #重定向端口需要安全通信转给端口
解决tomcat8005端口无法启用的问题
vim /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64/jre/lib/security/java.security
securerandom.source=file:/dev/urandom
日志
#vim /usr/local/tomcat/cong/server.xml
<Host>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
prefix 日志前缀 suffix 日志后缀,网站需要就要在<Host>里添加 注意修改前缀 日期会自动添加