Apache与Tomcat的安装与整合Word下载.docx
《Apache与Tomcat的安装与整合Word下载.docx》由会员分享,可在线阅读,更多相关《Apache与Tomcat的安装与整合Word下载.docx(17页珍藏版)》请在冰豆网上搜索。
tomcat5.0.28
下载地址:
http:
//jakarta.apache.org
apache2.0.53
http:
//httpd.apache.org
mod_jk-1.2.10-apache-2.0.53.so(根据Apache版本决定)
//archive.apache.org/dist/jakarta/tomcat-connectors/
把上面所有组件都安装到D:
\Server目录下,这样也方便日常管理配置和将来移植到别的服务器上去。
1:
安装j2sdk
安装到D:
\server\j2sdk\目录下,注意安装成系统服务
2:
安装tomcat
安装到D:
\server\tomcat\目录下,注意安装成系统服务
可能遇到的问题
问题1:
在解析JSP页面时,提示无法找到javacompiler
请拷贝j2sdk\lib\tools.jar到tomcat\common\lib下面。
使用tomcat作为service启动后总是这样,当然用startup.bat脚本启动倒是完全正常。
主要原因分析起来是以service方式启动的Tomcat无法读取JAVA_HOME和CLASS_PATH等环境变量。
问题2:
如何解决通过服务方式启动tomcat时log中提示ZoneInfo:
d:
\server\j2sdk\lib\zi\ZoneInfoMappings(系统找不到指定的路径。
)
从d:
\server\j2sdk\jre\lib目录拷贝所有文件放到d:
\server\j2sdk\lib\,jre\lib中的文件和j2sdk\lib\中的文件没有一个重复的,不用担心会覆盖掉j2sdk\lib中原有的任何文件。
3:
安装apache到d:
\server\(会自动生成apache2文件夹)
配置index.jsp为默认页配置GB2312为默认语言
不只Apache的httpd.conf中定义了默认页面文件,连Tomcat的web.xml配置文件的结尾处也定义了默认页面文件,而且Tomcat中定义的的优先级还高于原有的Apache中所定义的默认页。
4:
加入mod_jk连接模块
拷贝mod_jk-1.2.10-apache-2.0.53.so到d:
\server\apache2\modules\
改名为mod_jk.so
5:
修改apache的配置文件
为了保持httpd.conf文件的简洁,把jk模块的配置放到单独的文件中来,就在httpd.conf中增加一行调用
includeD:
\server\Apache2\conf\mod_jk.conf
6:
配置mod_jk.conf
请注意使用绝对路径
其实最关键的就是第一条第二条和最后一条,如果要精简,就保留这三条内容就可以了。
#Loadmod_jkmodule
LoadModulejk_modulemodules/mod_jk.so
#Wheretofindworkers.properties
JkWorkersFileconf/workers.properties
#Wheretoputjklogs
JkLogFilelogs/mod_jk.log
#Setthejkloglevel[debug/error/info]
JkLogLevelinfo
#Selectthelogformat
JkLogStampFormat\"
[%a%b%d%H:
%M:
%S%Y]\"
#JkOptionsindicatetosendSSLKEYSIZE,
JkOptions+ForwardKeySize+ForwardURICompat-ForwardDirectories
#JkRequestLogFormatsettherequestformat
JkRequestLogFormat\"
%w%V%T\"
#Sendservletforcontext/examplestoworkernamedajp13
#JkMount/servlet/*ajp13
#SendJSPsforcontext/examplestoworkernamedajp13
JkMount/*.jspajp13
上面这一行我们设置了了/*.jspajp13就是说把所有.jsp结尾的文件都由ajp13这个worker交给tomcat处理了,如果应用被映射为一个.do的URL,这样就会出错.解决方法是再添加如下一行:
JkMount/*.doajp13
7:
配置apache2\conf\workers.properties
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
#本机,若上面Tomcat主机不为localhost,作相应修改
worker.ajp13.type=ajp13
#类型
worker.ajp13.lbfactor=1
#代理数,不用修改
第二部分:
虚拟主机的配置
举例配置2个vhost网站一个是localhost,另一个是
当然是虚拟的,本地测试时,应该修改系统中的hosts文件,添加一行127.0.0.1
Apache虚拟主机配置:
Httpd.conf文件最后添加
\server\Apache2\conf\vhost.conf
而vhost.conf内容写
NameVirtualHost*:
80
<
VirtualHost*:
80>
ServerAdminwebmaster@localhost
DocumentRoot\"
D:
/server/Tomcat/webapps/ROOT\"
ServerNamelocalhost
ErrorLoglogs/localhost-error_log
CustomLoglogs/localhost-access_logcommon
/VirtualHost>
ServerAdmin****************************.com
DocumentRootD:
/server/www/
ServerName
ErrorLoglogs/-error_log
CustomLoglogs/-access_logcommon
Location/server-status>
#这样我可以看到apache服务器状态
SetHandlerserver-status
Orderdeny,allow
Denyfromall
Allowfromlocalhost
Allowfrom
/Location>
2:
Tomcat虚拟主机配置
添加新的虚拟主机,在tomcat安装路径\conf\server.xml的最后,找到<
Engine>
段,改为
Hostname=”localhost”……>
/Host>
Hostname=\"
\"
debug=\"
0\"
appBase=\"
/server/www/\"
unpackWARs=\"
true\"
autoDeploy=\"
xmlValidation=\"
false\"
xmlNamespaceAware=\"
>
Contextpath=\"
docBase=\"
.\"
/>
LoggerclassName=\"
org.apache.catalina.logger.FileLogger\"
directory=\"
logs\"
prefix=\"
_log.\"
suffix=\"
.txt\"
timestamp=\"
/Engine>
测试虚拟主机效果
访问http:
//localhost/应该可以看到原来的tomcat默认页面。
写一个index.jsp
html>
title>
testjsp
/title>
%out.println(\"
HelloWorld!
);
%>
/html>
放在d:
/server/www下面,访问
页面显示HelloWorld!
就成功了
第三部分,部分相关性能优化及其它问题
如何使用server版jvm?
Jvm动态库有client和server两个版本,分别针对桌面应用和服务器应用做了相应的优化,client版本加载速度较快,server版本加载速度较慢但运行起来较快。
在开始菜单tomcat5->
tomcatconfig的java属性中有一项jvm路径指向server目录下的jvm就行了。
更改默认java.exe调用的jvm.dll,这个由jvm.cfg决定。
编辑%JAVA_HOME%\jre\lib\i386\jvm.cfg
里面第一行写的是-client默认就是client版本,把第二行的-serverKNOWN放到第一行,如下面所示
-serverKNOWN
-clientKNOWN
-hotspotALIASED_TO-client
-classic