首先需要安装JDK,不是Linux自带的OpenJDK,参考下面的文章:
centos下 安装jdk
设置java环境变量:编辑这个/etc/profile文件:
export JAVA_HOME=/usr/java/jdk1.7.0_79
export JAVA_BIN=$JAVA_HOME/bin
export PATH=$JAVA_BIN:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
Tomcat设置关联JDK
查看Tomcat JDK版本
在使用Tomact运行项目时发现报当前编译环境jdk版本不匹配,于是我就想根据Tomcat运行加载的JDK版本进行设置项目编译的jdk版本。那么下面我将简单介绍下如何在tomcat服务器中通过命令查看JDK版本。
首先,Tomcat本身提供了查看版本的脚本命令:version。就在Tomcat的安装目录的bin子目录下,有两个文件:
· version.bat -- Windows下的批处理脚本
· version.sh -- Linux下的Shell脚本
执行脚本就可以查看Tomcat的版本了。
删除tomcat目录和web项目所有的文件
rm -rf /usr/local/tomcat /usr/local/myweb
cd /usr/local
rz 上传tomcat文件到linux下/usr/local目录中
unzip apache-tomcat-8.0.23.zip 解压缩tomcat到当前目录
ll 查看当前目录里面是否已经解压出来tomcat
mv apache-tomcat-8.0.23 tomcat 修改apche-tomcat-8.0.23名称为tomcat
cd /usr/local/tomcat/bin 进入tomcat的bin目录
ll 查看当前bin目录中的所有文件权限
chmod +x *.sh 提升sh文件可以执行的权限
在开发工具中使用maven安装springmvc的web项目,在target目录中找到****.war文件
cd /usr/local 切换目录
mkdir myweb 创建myweb目录
ll 查看myweb目录是否已经创建成功
cd myweb 切换到myweb目录
rz 上传war文件到myweb目录
unzip website-0.0.1-SNAPSHOT.war 解压缩war文件到当前目录
ll
接下来就开始配置tomcat和web项目了。
vim /usr/local/tomcat/conf/server.xml 编辑tomcat服务器配置文件
maxThreads="600" minSpareThreads="100" maxSpareThreads="500" maxProcessors="75" minProcessors="5" acceptCount="700" enableLookups="false" URIEncoding="true" compression="on" --修改设置
mkdir -p Catalina/localhost 在conf目录中递归创建Catalina/localhost目录
cd Catalina/localhost/ 进入localhost目录
rz 上传一个名为ROOT.xml文件
vim ROOT.xml 编辑修改ROOT.xml
<Context path="/" docBase="/usr/local/myweb" privileged="true" antiResourceLocking="false" antiJARLocking="false" />
cd /usr/local/tomcat/bin 切换到tomcat的bin目录中
./startup.sh 启动tomcat
输入网址:http://服务器端IP地址
查看tomcat进程ID,并停止tomcat运行。
ps -ef | grep tomcat
netstat -tpnl | grep 80
kill -9 进程ID
或者直接使用tomcat命令停止tomcat运行
cd /usr/local/tomcat/bin 进入tomcat程序所在目录
./shutdown.sh 执行关闭tomcat命令
支持tomcat域名设置,需要修改/usr/local/tomcat/conf/server.xml中<Engine>部分的<Host>,每个<Host>...</Host>代表一个域名(包括localhost)
<Host name="test.shuaige.cn" appBase="/usr/local/myweb" unpackWARs="true" autoDeploy="true"> <Context path="/" docBase="/usr/local/myweb" privileged="true" antiResourceLocking="false" antiJARLocking="false" />
</Host>
注意:
(使用path="/"的意思是表示不需要在/usr/local/myweb/目录中创建ROOT子目录放web项目了,直接在/usr/local/myweb/里面放web项目就可以了)
优化:Tomcat 5常用优化和配置
http://www.cnblogs.com/lxzh/p/3527376.html
1、修改tomcat让其支持NIO(org.apache.coyote.http11.Http11NioProtocol),并发数设置,禁用DNS查询(enableLookups="false"),设置解决乱码问题(URIEncoding="true")
当web应用程序向要记录客户端的信息时,它也会记录客户端的IP地址或者通过域名服务器查找机器名转换为IP地址。DNS查询需要占用网络,并且包括可能从很多很远的服务器或者不起作用的服务器上去获取对应的IP的过程,这样会消耗一定的时间。为了消除DNS查询对性能的影响我们可以关闭DNS查询,方式是修改server.xml文件中的enableLookups参数值为false。
<Connector port="80" protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="20000"
redirectPort="8443"
maxThreads="600" minSpareThreads="100" maxSpareThreads="500"
maxProcessors="75" minProcessors="5" acceptCount="700" enableLookups="false" URIEncoding="true"
compression="on" disableUploadTimeout="true" noCompressionUserAgents="gozilla,traviata" useSendfile="false"
compressableMimeType="text/html,text/xml,text/javascript,application/javascript,application/json,text/css,text/plain"
/>
https://ci.apache.org/projects/tomcat/tomcat7/docs/config/http.html
2、修改“/usr/local/tomcat/bin/catalina.sh”文件,增加下面这一句:
JAVA_OPTS='-server -Xms512m -Xmx5120m -Xss512k -XX:PermSize=256m -XX:MaxPermSize=512m'
-server【设置jvm使server模式,特点是启动速度比较慢,但运行时性能和内存管理效率很高,适用于生产环境。在具有64位能力的jdk环境下将默认启用该模式,而忽略-client参数。】
-Xms【初始化内存大小】
-Xmx【可以使用的最大内存】
-Xss【设置每个线程的堆栈大小】
234 #JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.security.SecurityListener.UMASK=`umask`"
235 JAVA_OPTS='-server -Xms512m -Xmx5120m -Xss512k -XX:PermSize=256m -XX:MaxPermSize=512m'
3、tomcat中如何禁止和允许列目录下的文档
在/usr/local/tomcat/conf/web.xml中,把listings参数配置成false即可,如下:
<servlet> ... <init-param> <param-name>listings</param-name> <param-value>false</param-value> </init-param> ... </servlet>
4、tomcat中如何禁止和允许主机或IP地址访问
<Host ...> ... <ValveclassName="org.apache.catalina.valves.RemoteHostValve" allow="*.mycompany.com,www.yourcompany.com"/> <ValveclassName="org.apache.catalina.valves.RemoteAddrValve" deny="192.168.1.*"/> ... </Host>
5、自启动:在/etc/rc.d/rc.local中加入:
/data/tomcat/bin/startup.sh
6、防火墙
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
service iptables save
service iptables restart
cat /etc/sysconfig/iptables
7、Https需要改成AprLifecycleListener改成off
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="off" />