Tomcat学习总结(6)——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属性即可
- <Connector port="8080" protocol="HTTP/1.1"
- connectionTimeout="20000"
- 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,找到如下代码段
- <!--
- <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
- maxThreads="150" scheme="https" secure="true"
- clientAuth="false" sslProtocol="TLS" />
- -->
将注释打开,并修改Connector 标签内容,keystorePass为密钥库口令
- <Connector port="8443"
- protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true"
- maxThreads="150" scheme="https" secure="true"
- keystoreFile="D:\tomcat.keystore" keystorePass="password"
- 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,找到如下代码段
- <Host name="localhost" appBase="webapps"
- unpackWARs="true" autoDeploy="true">
- <!-- SingleSignOn valve, share authentication between web applications
- Documentation at: /docs/config/valve.html -->
- <!--
- <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
- -->
- <!-- Access log processes all example.
- Documentation at: /docs/config/valve.html
- Note: The pattern used is equivalent to using pattern="common" -->
- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
- prefix="localhost_access_log" suffix=".txt"
- pattern="%h %l %u %t "%r" %s %b" />
- </Host>
在Host 标签内加入如下代码段,docBase属性可指定项目名称,将其设置为"examples"
- <Context path="" docBase="examples" reloadable="true" crossContext="true">
- </Context>
修改后的Host 标签
- <Host name="localhost" appBase="webapps"
- unpackWARs="true" autoDeploy="true">
- <Context path="" docBase="examples" reloadable="true" crossContext="true">
- </Context>
- <!-- SingleSignOn valve, share authentication between web applications
- Documentation at: /docs/config/valve.html -->
- <!--
- <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
- -->
- <!-- Access log processes all example.
- Documentation at: /docs/config/valve.html
- Note: The pattern used is equivalent to using pattern="common" -->
- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
- prefix="localhost_access_log" suffix=".txt"
- pattern="%h %l %u %t "%r" %s %b" />
- </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标签下添加如下内容
- <role rolename="admin-gui"/>
- <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标签的值
- <session-config>
- <session-timeout >30</session-timeout>
- </session-config>