Tomcat学习总结——Tomca常用配置详解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tomcat学习总结——Tomca常用配置详解相关的知识,希望对你有一定的参考价值。

注:Tomcat 8需要JRE7以上的JRE

1. Tomcat环境变量设置

1.1 Java环境变量设置

右键计算机—属性—高级系统设置—环境变量,在”系统环境变量”,设置如下三个变量(如果变量已有,点”编辑”;如果变量没有,点”新建”。格式:变量名 = 变量值)

JAVA_HOME = C:\Program Files\Java\jdk1.7.0_51

CLASSPATH = %JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;.

在Path的变量值尾部加上;%JAVA_HOME%\bin

1.2 Tomcat环境变量设置

在”系统环境变量”,设置如下两个变量

CATALINA_HOME = D:\Program Files\apache-tomcat-8.0.3

在Path的变量值尾部加上;%CATALINA_HOME%\bin

启动Tomcat

双击D:\Program Files\apache-tomcat-8.0.3\bin目录下的startup.bat(也可以在cmd下执行startup.bat)。在如下界面没有异常,即表明Tomcat启动成功 

技术分享

访问Tomcat

在浏览器下输入http://localhost:8080,即可看到Tomcat首页

 技术分享

2. 修改Tomcat端口

Tomcat默认监听的是8080端口,如果想修改此端口号,打开

D:\Program Files\apache-tomcat-8.0.3\conf\server.xml,找到如下代码段,修改port属性即可

 

[html] view plain copy
 
 
 
 技术分享技术分享
  1. <Connector port="8080" protocol="HTTP/1.1"  
  2.                connectionTimeout="20000"  
  3.                redirectPort="8443" />  

 

3. Tomcat设置https

3.1 制作xx.keystore文件

在命令行下输入如下命令:

keytool -genkey -alias tomcat -keyalg RSA -keystore D:\test.keystore

(keytool.exe 在C:\Program Files\Java\jdk1.7.0_51\bin目录下。因为已设置jdk环境变量,因此可以在命令行下可直接使用keytool)

密钥库口令随意填,最后一步的密钥口令也随意填,也可以选择跟密钥库口令一样(按”Enter”键即可)

 技术分享

在D盘下可以看到test.keystore 文件

3.2 修改server.xml

打开D:\Program Files\apache-tomcat-8.0.3\conf\server.xml,找到如下代码段

 

[html] view plain copy
 
 
 
 技术分享技术分享
  1. <!--  
  2.     <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"  
  3.                maxThreads="150" scheme="https" secure="true"  
  4.                clientAuth="false" sslProtocol="TLS" />  
  5. -->  

 

将注释打开,并修改Connector 标签内容,keystorePass为密钥库口令

 

[html] view plain copy
 
 
 
  1. <Connector port="8443"   
  2.            protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true"  
  3.                maxThreads="150" scheme="https" secure="true"  
  4.            keystoreFile="D:\tomcat.keystore" keystorePass="password"  
  5.                clientAuth="false" sslProtocol="TLS" />  

 

重启Tomcat,在浏览器下输入https://localhost:8443,即可看到Tomcat首页

4. 修改Tomcat默认web项目

Tomcat的web项目放在D:\Program Files\apache-tomcat-8.0.3\webapps目录下,Tomcat自带了5个Web项目:docs、examples、host-manager、manager、ROOT,Tomcat启动时会部署webapps下的所有项目

在浏览器下输入http://localhost:8080/examples/index.html,即可访问examples的首页(虽然简陋了点。。。)

技术分享

(访问http://localhost:8080/host-manager/index.jsp和http://localhost:8080/manager/index.jsp会提示输入用户名、密码,Tomcat的账号问题将在下文介绍)

显然在访问http://localhost:8080的时候,Tomcat默认指向了ROOT项目,那该怎么做可以让Tomcat指向自定义项目呢?

打开D:\Program Files\apache-tomcat-8.0.3\conf\server.xml,找到如下代码段

 

[html] view plain copy
 
 
 
 技术分享技术分享
  1. <Host name="localhost"  appBase="webapps"  
  2.             unpackWARs="true" autoDeploy="true">  
  3.    
  4.         <!-- SingleSignOn valve, share authentication between web applications  
  5.              Documentation at: /docs/config/valve.html -->  
  6.         <!-- 
  7.         <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> 
  8.         -->  
  9.    
  10.         <!-- Access log processes all example.  
  11.              Documentation at: /docs/config/valve.html  
  12.              Note: The pattern used is equivalent to using pattern="common" -->  
  13.         <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"  
  14.                prefix="localhost_access_log" suffix=".txt"  
  15.                pattern="%h %l %u %t "%r" %s %b" />  
  16.    
  17.       </Host>  

 

在Host 标签内加入如下代码段,docBase属性可指定项目名称,将其设置为"examples"

 

[html] view plain copy
 
 
 
 技术分享技术分享
  1. <Context path="" docBase="examples"  reloadable="true" crossContext="true">  
  2.  </Context>  

 

修改后的Host 标签

 

[html] view plain copy
 
 
 
 技术分享技术分享
  1. <Host name="localhost"  appBase="webapps"  
  2.             unpackWARs="true" autoDeploy="true">  
  3.     <Context path="" docBase="examples" reloadable="true" crossContext="true">  
  4.     </Context>  
  5.         <!-- SingleSignOn valve, share authentication between web applications  
  6.              Documentation at: /docs/config/valve.html -->  
  7.         <!-- 
  8.         <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> 
  9.         -->  
  10.    
  11.         <!-- Access log processes all example.  
  12.              Documentation at: /docs/config/valve.html  
  13.              Note: The pattern used is equivalent to using pattern="common" -->  
  14.         <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"  
  15.                prefix="localhost_access_log" suffix=".txt"  
  16.                pattern="%h %l %u %t "%r" %s %b" />  
  17.    
  18.       </Host>  

 

重新启动Tomcat,在浏览器下输入http://localhost:8080,即可看到examples的首页

5. Tomcat账号

访问http://localhost:8080/host-manager/index.jsp,会提示输入用户名、密码,点”取消”,会弹出错误页面,根据此错误页面可以找到设置Tomcat账号的办法

 技术分享

 技术分享

打开D:\Program Files\apache-tomcat-8.0.3\conf\tomcat-users.xml,在tomcat-users标签下添加如下内容

 

[html] view plain copy
 
 
 
 技术分享技术分享
  1. <role rolename="admin-gui"/>  
  2.  <user username="tomcat" password="s3cret" roles="admin-gui"/>  

 

重启Tomcat,然后访问http://localhost:8080/host-manager/index.jsp,用户名输入tomcat,密码输入s3cret,即可

6. eclipse中添加Tomcat

eclipse版本:Eclipse Java EE IDE for Web Developers(Juno Service Release 2)

选择Window-Preferences-Server-Runtime Environment-Add,选择Tomcat版本,这版eclipse支持的Tomcat的最高版为7,

因此下面使用apache-tomcat-7.0.52进行配置

技术分享

输入Tomcat7的路径

JRE可以用Workbench default JRE也可以用安装的JRE

技术分享

点”Finish”完成eclipse下Tomcat设置

在eclipse下部署Web项目

右键Web项目-Run As-Run on Server

选择刚才配置的Tomcat,点”Finish”,即可部署该项目

技术分享

7. 修改Session有效时间

 

默认情况下,Session有效时间为30分钟。打开\conf\web.xml,修改session-timeout标签的值

 

[html] view plain copy
 
 
 
  1. <session-config>  
  2.         <session-timeout >30</session-timeout>  
  3. </session-config

以上是关于Tomcat学习总结——Tomca常用配置详解的主要内容,如果未能解决你的问题,请参考以下文章

javaweb学习总结-tomcat服务器安装与基本使用

Nginx学习总结

Servlet3.0学习总结——使用注解标注Servlet

Tomcat中常用的调优

J2EE_Tomca同配置问题解决

基于JVM(内存)和Tomcat性能调优