注册
登录
论坛
搜索
社区银行
帮助
导航
私人消息 (0)
公共消息 (0)
系统消息 (0)
好友消息 (0)
帖子消息 (0)
黑色海岸线论坛
»
网络安全
» [原创]Tomcat使用的一些整理
返回列表
发帖
发短消息
加为好友
风灵风之子
当前离线
帖子
3919
我的爱好
阅读权限
200
来自
江苏苏州
在线时间
497 小时
论坛巡查
主题
1
积分
178
贝壳
178 个
来自
江苏苏州
注册时间
2002-11-26
最后登录
2011-4-7
楼主
跳转到
»
倒序看帖
打印
字体大小:
t
T
风灵风之子
发表于 2008-5-11 23:29
|
只看该作者
[原创]
[原创]Tomcat使用的一些整理
1)
安装
Tomcat
时遇到
Using Jvm: C:\Java\jre1.6.0_04\bin\client\jvm.dll
进度条不动了
说实话,本人使用
Tomcat
也有一段时间了,我也是第一次遇到这样的情况。刚开始还以为
Tomcat5.5
必须要
jdk1.5
才能安装,于是我把
jdk1.6
卸载,发现还是同样的问题。最后折腾了半天发现是瑞星防火墙的问题了,将其关闭即可正常安装。
2)
Tomcat5.5 Admin
配置
Tomcat5.5
以后的版本就不再提供
Tomcat Administration Web Application
,如果需要使用必须自己下载,而且下载的版本必须和
Tomcat
的版本对应,我使用的
Tomcat
版本是
5.5.26
,因此下载
apache-tomcat-5.5.26-admin
这个压缩包,将其解压到
C
盘。然后开始对
Tomcat
进行配置,拷贝
C:\apache-tomcat-5.5.26-admin\apache-tomcat-5.5.26\conf\Catalina\localhost
下的文件
admin.xml
至%TOMCAT_HOME%
\
conf\Catalina\localhost文件夹下,拷贝C:\apache-tomcat-5.5.26-admin\apache-tomcat-5.5.26\server\webapps文件夹下的admin文件夹至%TOMCAT_HOME%\server\webapps文件夹下。打开%TOMCAT_HOME%\conf文件夹下的tomcat-users.xml,察看是否有<user username="admin" password="123" roles="admin,manager"/>,如果没有这一行请加上,其中123为密码,可以根据自己的喜好替换。
最后重起Tomcat,输入
http://localhost:8080/admin
,在输入用户名和密码即可登陆Tomcat管理控制平台
3)
编码问题
做完上传文件的模块,测试上传含有中文名称的文件时,发现上传异常。
解决办法:修改
%TOMCAT_HOME% \conf
文件夹下的
server.xml
,找到
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
<Connector
port="8080" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
c disableUploadTimeout="true" />
将其改为
<Connector
port="80" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
c disableUploadTimeout="true" URIEncoding="utf-8"/>
重起
Tomcat
即可
4)
虚拟主机配置
有时候我们需要将
Tomcat
配置成
web
服务器,并且绑定域名。
解决办法:首先修改
%TOMCAT_HOME% \conf
文件夹下的
server.xml
,找到
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
<Connector
port="8080" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
c disableUploadTimeout="true" URIEncoding="utf-8"/>
将其端口改为
80
,然后找到
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
将其改为:
<Host name="www.xxx.com" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
其中
xxx
为绑定的域名,
webapps
为
Tomcat
默认的文件夹
%TOMCAT_HOME%\webapps\ROOT
,也可以根据情况将
web
工程放入其他文件夹
最后重起
Tomcat
即可。
5)
多网站配置
一台服务器上需要配置多个网站
解决方案:
修改
%TOMCAT_HOME% \conf
文件夹下的
server.xml
,在
</Host>
后面添加
<Host name="www.aaa.com" debug="0" appBase="E:\aaa\" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="." debug="0"/>
</Host>
<Host name="www.bbb.cn" debug="0" appBase="E:\bbb\" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="." debug="0"/>
</Host>
这样我们配置了
2
个网站,分别将
2
个
web
工程放入
E
盘的
aaa
文件夹和
E
盘的
bbb
文件夹下
最后重起
Tomcat
即可。
6)
Apache
整和
Tomcat
Tomcat
作为
JSP
的容器在处理静态网页、图片文件时处理能力不及
Apache
,如果要搭建访问量较大的
web
服务器时,可以考虑
Tomcat+Apache
,
Tomcat
负责解析
jsp
和
servlet
,
Apache
负责处理静态网页。
解决方案:
首先,安装
Tomcat
和
Apache
,
2
者的安装无先后顺序,不过重要的是
2
者的端口不能冲突。
然后,修改
Apache
的配置,主要修改
Apache
的根目录下的
conf
文件夹下的
httpd.conf
文件:
第一步,将
DocumentRoot "C:/Apache Software Foundation/Apache2.2/htdocs"
改为
DocumentRoot "C:/Apache Software Foundation/Tomcat 5.5/webapps"
。
将
<Directory "C:/Apache Software Foundation/Apache2.2/htdocs">
改为
<Directory "C:/Apache Software Foundation/Tomcat 5.5/webapps">
。
第二步,修改默认主页的优先级将
DirectoryIndex index.html index.html.var
改为
DirectoryIndex index.html index.htm index.jsp
。
第三步,下载
mod_jk-apache-2.2.4.so
,因为本人使用的
Apache
为
apache_2.2.4
,将
mod_jk-apache-2.2.4.so
改名为
mod_jk.so
并拷入
Apache
根目录下的
modules
文件夹下。
第四步,在
httpd.conf
文件最后添加
LoadModule jk_module modules/mod_jk.so
JkWorkersFile "C:\Apache Software Foundation\Tomcat 5.5\conf\workers.properties"
JkMount /servlet/* ajp13
JkMount /*.jsp ajp13
这几行的目的主要是为了
Apache
将
jsp
和
servlet
交给
Tomcat
处理,当然如果使用
Struts1.x
的话可以加入解析
.do
最后修改
Tomcat
的配置
第一步,在
%TOMCAT_HOME%\conf
文件夹下添加
workers.properties
,该文件内容如下
#
让
mod_jk
模块知道
Tomcat
在何处
workers.tomcat_home=C:\Apache Software Foundation\Tomcat 5.5
#
让
mod_jk
模块知道
JSDK
在何处
workers.java_home=C:\Java\jdk1.6.0_04
ps=\
# mod_jk
的模块版本
worker.list=ajp13
# mod_jk
的工作端口
worker.ajp13.port=8009
#
工作的主机,可以更改
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1
第二步,检查
%TOMCAT_HOME%\conf
文件夹下的
server.xml
中
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
改句是否被注释,确保没被注释,因为
Tomcat
和
Apache
通过它来相互通信。
重起
Tomcat
和
Apache
,然后输入:
http://127.0.0.1
即出现安装
Tomcat
的默认页面,说明
Tomcat
和
Apache
整合成功。
7)
Tomcat
支持
gzip
压缩
HTTP
压缩可以大大提高浏览网站的速度,它的原理是,在客户端请求网页后,从服务器端将网页文件压缩,再下载到客户端,由客户端的浏览器负责解压缩并浏览。
在
Tomcat
下配置如下:
修改
%TOMCAT_HOME% \conf
文件夹下的
server.xml
,找到
<Connector
port="80" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
c disableUploadTimeout="true" URIEncoding="utf-8"/>
<!-- Note : To disable connection timeouts, set connectionTimeout value
to 0 -->
<!-- Note : To use gzip compression you could set the following properties :
compression="on"
compressi
noCompressi
compressableMimeType="text/html,text/xml"
-->
将其改为:
<Connector
port="80" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
c disableUploadTimeout="true" URIEncoding="utf-8"
compression="on"
compressi
noCompressi
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" />
<!-- Note : To disable connection timeouts, set connectionTimeout value
to 0 -->
<!-- Note : To use gzip compression you could set the following properties :
compression="on"
compressi
noCompressi
compressableMimeType="text/html,text/xml"
-->
这样,我们配置好了
Tomcat
,使其支持
gzip
压缩。
最后重起
Tomcat
即可。
8)
发布
web
工程时
Tomcat
不再检测
jsp
页面是否改变
解决方案:
修改
%TOMCAT_HOME% \conf
文件夹下的
web.xml
,找到
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>fork</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>xpoweredBy</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
将其改为:
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>fork</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>development</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>xpoweredBy</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
处于发布状态的
web
工程不需要检查
jsp
是否需要修改,提高
Tomcat
效率。
最后重起
Tomcat
即可。
收藏
分享
天行健,君子以自强不息
地势坤,君子以厚德载物
黑色海岸线欢迎您
返回列表
回复
发帖
使用交流
网络安全
网络技术
娱乐休闲
灌水乐园
文学天地
美图欣赏
网站办公
站务处理
[收藏此主题]
[关注此主题的新回复]
[通过 QQ、MSN 分享给朋友]