- 浏览: 229553 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
hl174:
写的不错,赞一个
在Java中字节与十六进制的相互转换主要思想有两点 -
l540151663:
也是个好方法
String为空判断
Apache 与tomcat实现分布式应用部署
一:原理
tomcat是一个web应用服务器,能够解析静态文件和动态文件(如:html、jsp、servlet等);apache是一个web server,能够解析静态文件。Tomcat作为一个独立的web服务器是可以使用的,但是它对静态文件的解析能力不如apache,所以就产生现在的web应用的分布式部署,apache+tomcat。
两者之间的通信通过workers配置(由tomcat使用Server.xml中的Connector标签定义端口port和协议protocol,workers.properties文件中定义端口、协议、tomcat服务器地址);由mod_jk模块负责两者通信的处理。通信协议有很多,其中jk2已经被抛弃了,现在就用jk就好了。
整个过程其实就是让apache的httpd.conf文件调用mod_jk.conf,mod_jk.conf调用workers.properties,最后配置虚拟主机。
二:文件说明
mod_jk.conf
主要定义mod_jk模块的位置以及mod_jk模块的连接日志设置,还有定义worker.properties文件的位置。
worker.properties
定义worker的参数,主要是连接tomcat主机的地址和端口信息。如果Tomcat与apache不在同一台机器上,或者需要做多台机器上tomcat的负载均衡只需要更改workers.properties文件中的相应定义即可。
三:软件版本说明
Jdk1.4.2_08(1.5也可以,把JRE装在JDK目录下)
tomcat 5.0.、5.5
apache apache_2.0.55-win32-x86-no_ssl.msi
mod_jk_1.2.6_2.0.50.dll(要根据apache版本确认)
把上面所有组件都安装到D:\Server目录下,这样也方便日常管理配置和将来移植到别的服务器上去
JAVA_HOME java安装路径
TOMCAT_HOME tomcat安装路径
APACHE_HOME apache安装路径
四:操作步骤
4.1软件安装
按顺序安装Jdk1.5、tomcat、apache
可能遇到的问题
问题1: 在解析JSP页面时,提示无法找到java compiler
请拷贝 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 中原有的任何文件。
4.2加入mod_jk连接模块
拷贝mod_jk_1.2.6_2.0.50.dll到APACHE_HOME\apache2\modules\文件夹下,并重命名为mod_jk.dll
4.3修改apache配置文件
为了保持httpd.conf文件的简洁,把jk模块的配置放到单独的文件中来,就在httpd.conf中增加一行调用include “D:\server\Apache2\conf\mod_jk.conf”
4.4配置mod_jk.conf
下面是mod_jk.conf的文件内容,根据项目实际情况进行修改(照做就可以了)
# Load mod_jk module
LoadModule jk_module modules/mod_jk.dll
# Where to find workers.properties
JkWorkersFile conf/workers.properties
# Where to put jk logs
JkLogFile logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
# Select the log format
#JkLogStampFormat \"[%a %b %d %H:%M:%S %Y] \"
# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
#JkRequestLogFormat \"%w %V %T\"
# Send servlet for context /examples to worker named ajp13
#JkMount /servlet/* ajp13
# Send JSPs for context /examples to worker named ajp13
JkMount /*.jsp ajp13
JkMount /*.do ajp13
JkMount /*/*.do ajp13
上面这一行我们设置了了 /*.jsp ajp13 就是说把所有.jsp结尾的文件都由ajp13这个worker交给tomcat处理了
4.5配置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 #代理数,不用修改
4.6虚拟主机的配置
举例配置2个vhost网站 一个是 localhost ,另一个是 www.ok.com
当然www.ok.com 是虚拟的,本地测试时,应该修改系统中的hosts文件,添加一行 127.0.0.1 www.ok.com
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "C:/tomcat-5.5.9/webapps/jsp-examples/"
ServerName localhost
ErrorLog logs/localhost-error_log
CustomLog logs/localhost-access_log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot D:/projectTest/
ServerName 192.168.5.220
ErrorLog logs/ok.com-error_log
CustomLog logs/ok.com-access_log common
<Location /server-status> # 这样我可以看到apache服务器状态
SetHandler server-status
#Order deny,allow
#Deny from all
#Allow from localhost
#Allow from 192.168.5.80
</Location>
</VirtualHost>
4.7虚拟主机的配置
添加新的www.ok.com 虚拟主机,在tomcat安装路径\conf\server.xml的最后,找到<Engine>段,改为
<Engine>
<Host name=”localhost” ……>
</Host>
<Host name=\"www.ok.com\" debug=\"0\" appBase=\"D:/server/www/\" unpackWARs=\"true\" autoDeploy=\"true\" xmlValidation=\"false\" xmlNamespaceAware=\"false\">
<Context path=\"\" docBase=\".\" />
<Logger className=\"org.apache.catalina.logger.FileLogger\" directory=\"logs\" prefix=\"ok.com_log.\" suffix=\".txt\" timestamp=\"true\" />
</Host>
</Engine>
五:结语
因tomcat、apache都是开源软件,对版本搭配要求比较严格,因此一定要注意版本。
mod_jk.conf、workers.properties不是所有tomcat都自带的,从网络上下载就可以了。
一:原理
tomcat是一个web应用服务器,能够解析静态文件和动态文件(如:html、jsp、servlet等);apache是一个web server,能够解析静态文件。Tomcat作为一个独立的web服务器是可以使用的,但是它对静态文件的解析能力不如apache,所以就产生现在的web应用的分布式部署,apache+tomcat。
两者之间的通信通过workers配置(由tomcat使用Server.xml中的Connector标签定义端口port和协议protocol,workers.properties文件中定义端口、协议、tomcat服务器地址);由mod_jk模块负责两者通信的处理。通信协议有很多,其中jk2已经被抛弃了,现在就用jk就好了。
整个过程其实就是让apache的httpd.conf文件调用mod_jk.conf,mod_jk.conf调用workers.properties,最后配置虚拟主机。
二:文件说明
mod_jk.conf
主要定义mod_jk模块的位置以及mod_jk模块的连接日志设置,还有定义worker.properties文件的位置。
worker.properties
定义worker的参数,主要是连接tomcat主机的地址和端口信息。如果Tomcat与apache不在同一台机器上,或者需要做多台机器上tomcat的负载均衡只需要更改workers.properties文件中的相应定义即可。
三:软件版本说明
Jdk1.4.2_08(1.5也可以,把JRE装在JDK目录下)
tomcat 5.0.、5.5
apache apache_2.0.55-win32-x86-no_ssl.msi
mod_jk_1.2.6_2.0.50.dll(要根据apache版本确认)
把上面所有组件都安装到D:\Server目录下,这样也方便日常管理配置和将来移植到别的服务器上去
JAVA_HOME java安装路径
TOMCAT_HOME tomcat安装路径
APACHE_HOME apache安装路径
四:操作步骤
4.1软件安装
按顺序安装Jdk1.5、tomcat、apache
可能遇到的问题
问题1: 在解析JSP页面时,提示无法找到java compiler
请拷贝 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 中原有的任何文件。
4.2加入mod_jk连接模块
拷贝mod_jk_1.2.6_2.0.50.dll到APACHE_HOME\apache2\modules\文件夹下,并重命名为mod_jk.dll
4.3修改apache配置文件
为了保持httpd.conf文件的简洁,把jk模块的配置放到单独的文件中来,就在httpd.conf中增加一行调用include “D:\server\Apache2\conf\mod_jk.conf”
4.4配置mod_jk.conf
下面是mod_jk.conf的文件内容,根据项目实际情况进行修改(照做就可以了)
# Load mod_jk module
LoadModule jk_module modules/mod_jk.dll
# Where to find workers.properties
JkWorkersFile conf/workers.properties
# Where to put jk logs
JkLogFile logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
# Select the log format
#JkLogStampFormat \"[%a %b %d %H:%M:%S %Y] \"
# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
#JkRequestLogFormat \"%w %V %T\"
# Send servlet for context /examples to worker named ajp13
#JkMount /servlet/* ajp13
# Send JSPs for context /examples to worker named ajp13
JkMount /*.jsp ajp13
JkMount /*.do ajp13
JkMount /*/*.do ajp13
上面这一行我们设置了了 /*.jsp ajp13 就是说把所有.jsp结尾的文件都由ajp13这个worker交给tomcat处理了
4.5配置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 #代理数,不用修改
4.6虚拟主机的配置
举例配置2个vhost网站 一个是 localhost ,另一个是 www.ok.com
当然www.ok.com 是虚拟的,本地测试时,应该修改系统中的hosts文件,添加一行 127.0.0.1 www.ok.com
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "C:/tomcat-5.5.9/webapps/jsp-examples/"
ServerName localhost
ErrorLog logs/localhost-error_log
CustomLog logs/localhost-access_log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot D:/projectTest/
ServerName 192.168.5.220
ErrorLog logs/ok.com-error_log
CustomLog logs/ok.com-access_log common
<Location /server-status> # 这样我可以看到apache服务器状态
SetHandler server-status
#Order deny,allow
#Deny from all
#Allow from localhost
#Allow from 192.168.5.80
</Location>
</VirtualHost>
4.7虚拟主机的配置
添加新的www.ok.com 虚拟主机,在tomcat安装路径\conf\server.xml的最后,找到<Engine>段,改为
<Engine>
<Host name=”localhost” ……>
</Host>
<Host name=\"www.ok.com\" debug=\"0\" appBase=\"D:/server/www/\" unpackWARs=\"true\" autoDeploy=\"true\" xmlValidation=\"false\" xmlNamespaceAware=\"false\">
<Context path=\"\" docBase=\".\" />
<Logger className=\"org.apache.catalina.logger.FileLogger\" directory=\"logs\" prefix=\"ok.com_log.\" suffix=\".txt\" timestamp=\"true\" />
</Host>
</Engine>
五:结语
因tomcat、apache都是开源软件,对版本搭配要求比较严格,因此一定要注意版本。
mod_jk.conf、workers.properties不是所有tomcat都自带的,从网络上下载就可以了。
发表评论
-
HTML页面加载和解析流程
2017-09-02 14:02 554HTML页面加载和解析流程 浏览器加载和渲染html的顺序 1 ... -
getAttribute和getParameter的区别
2017-06-03 18:28 601java中getAttribute和getParameter的 ... -
程序优化总结
2016-11-01 23:42 3871:把大的切割成小的 2:减少数据库分访问次数,放缓存中一次来 ... -
java webroot 下文件夹介绍
2016-10-04 11:22 701/WEB-INF/web.xml Web应用程序配置文件,描 ... -
Web.xml配置详解
2016-05-09 12:23 490Web.xml配置详解 Posted on 2 ... -
如何克隆一个网站
2015-10-25 22:56 15891、用firefox的firebug插件2 ... -
讲web程序本地,外网访问
2015-07-09 00:26 479ngrok -
页面添加水印
2015-06-23 17:39 7781:<body background='/gpmal ... -
MyEclipse-6.5注册码生成器源码
2014-11-26 10:54 731MyEclipse-6.5注册码生成器源码 分类 ... -
eclipse生成war文件
2014-06-16 16:40 8571:在项目上点右键->properties 2:在'To ... -
表格第一固定
2013-11-26 13:17 765<html> <head> <s ... -
我心目中最好的框架组合是
2013-06-06 09:46 850我心目中最好的框架组合是: 表示层:spr ... -
apache,tomcat,jk集群配置
2013-05-31 15:47 753终于搞好了哦!本人测试过,绝对可以用,就是session同步问 ... -
如何查看端口号被哪个程序占用了
2012-12-15 21:59 1181如何查看端口号被哪个程序占用了? 一, 1 ... -
免安装tomcat配置
2012-12-07 12:15 51141、 下载 到Apache的官 ... -
eclipse tomcat 问题
2012-12-04 14:17 7211:配置tomcat问题 1.1 配置tomcat,java ... -
jsp servlet 关系
2012-03-24 22:43 781JSP是Servlet的扩展,在没有JSP之前,就已经出 ...
相关推荐
Mysql JDK Tomcat Apache配置大全 很详细 非常有用!!
本文将详细介绍如何配置 Apache + Tomcat 集群,包括安装 Apache 和 Tomcat 服务器、配置 mod_jk 模块、配置 Apache 和 Tomcat 服务器、配置负载均衡控制器等。 一、安装 Apache 服务器 首先,需要安装 Apache ...
在本文中,我们将深入探讨Apache Tomcat的配置过程,并基于提供的资源进行讲解。 首先,Apache Tomcat的配置主要涉及以下几个核心文件: 1. **server.xml**:这是Tomcat的主要配置文件,定义了服务器的全局属性,...
总的来说,Windows环境下配置Apache和Tomcat集成,需要对两者的基本工作原理有一定理解,并且熟悉它们的配置文件。通过正确的配置,我们可以创建一个稳定且高效的Web服务器环境,为用户提供丰富的静态和动态内容服务...
可以在Apache配置中关闭访问日志,而在Tomcat中保留应用日志。 9. **性能监控** 使用监控工具(如Nagios、Zabbix)定期检查Apache和Tomcat的状态,包括CPU、内存使用率、请求响应时间等,及时发现并解决性能瓶颈。...
Apache和Tomcat整合是将Apache HTTP服务器作为前端...因此,在整合Apache和Tomcat时,需要仔细检查和测试每一个配置细节,确保两者能够无缝协作。同时,监控系统性能,优化配置,以达到最佳的负载平衡和性能效果。
Apache 与Tomcat 集成配置 具体可参考 http://blog.csdn.net/heng_ji/article/details/50850253 http://blog.csdn.net/heng_ji/article/details/50849184
Apache 和 Tomcat 配置是部署 Web 应用的关键步骤,尤其当需要搭建集群环境时。Apache 通常作为前端服务器处理静态内容,而 Tomcat 作为应用服务器处理动态 Java 应用。以下是对Apache和Tomcat配置的详细总结: 1. ...
Apache Tomcat 的安装与配置傻瓜式教程 在本篇文章中,我们将详细介绍如何安装和配置 Apache Tomcat,以便轻松地搭建开发环境。整个过程可以分为四步,非常简单易懂。 第一步:下载并解压缩 Apache Tomcat 首先,...
Apache+Tomcat集群配置,Apache+Tomcat集群配置,Apache+Tomcat集群配置
以下是关于如何配置Apache2.2与Tomcat6的详细步骤和知识点: 1. **Apache2.2简介**: Apache2.2是Apache HTTP Server的一个版本,主要负责处理HTTP请求,提供静态网页内容。它具有良好的稳定性和丰富的模块支持。 ...
6. **Apache配置**: - 在Apache的配置文件(如`httpd.conf`)中,需要加载`mod_jk`模块,并设置`JkMount`指令,将特定的URL映射到相应的Tomcat工作器,以实现请求的分发。例如,`JkMount /system* controller`将...
Mac 系统中 Apache Tomcat 安装配置 一、 Apache 服务器简介 Apache 服务器是一种普通服务器,本身只支持 HTML,即普通网页。通过插件支持 PHP,还可以与 Tomcat 连通,即通过 Apache 可以访问 Tomcat 资源,...
【标题】:“Tomcat+Apache集群配置实例” 在IT领域,服务器集群是一种常见的高可用性和负载均衡解决方案。这里我们将深入探讨如何配置一个基于Tomcat和Apache的集群环境,以提高Web应用的服务质量和应对高流量场景...
#### 三、Apache配置 接下来是Apache的配置步骤,以实现与Tomcat集群的集成。 - **加载代理模块**: - 打开Apache的配置文件 `conf/httpd.conf`,取消以下行的注释: ```plaintext LoadModule proxy_module ...
标题中的“Tomcat与Apache配置”指的是在Web服务器领域中,如何将Apache HTTP服务器与Tomcat应用服务器集成在一起,以实现动态内容(如Java Servlets和JSP)的处理。Apache通常作为静态资源的服务器,而Tomcat则专门...