Apache与tomcat的整合、负载均衡和加入启动和系统服务
APACHE 2.2.4与TOMCAT6.0.14整合教程

APACHE 2.2.4+TOMCAT6.0.14配置负载均衡的网站目标:使用 apache 和 tomcat 配置一个可以应用的 web 网站,要达到以下要求:1、 Apache 做为 HttpServer ,后面连接多个 tomcat 应用实例,并进行负载均衡。
2、为系统设定 Session 超时时间,包括 Apache 和 tomcat3、为系统屏蔽文件列表,包括 Apache 和 tomcat注:本例程以一台机器为例子,即同一台机器上装一个apache+2个Tomcat。
一、前期准备工作:安装用的程序APAHCE 2.2.4下载:apache_2.2.4-win32-x86-no_ssl.msiTOMCAT6.0.14下载:apache-tomcat-6.0.14.zip直接解压。
APACHE-tomcat连接器:mod_jk-apache-2.2.4.so远程下载:/Apache/tomcat/tomcat-connectors/jk/bina ries/win32/jk-1.2.23/mod_jk-apache-2.2.4.so二、安装过程APAHCE安装目录:C:\Program Files\Apache Software Foundation\Apache2.2,下称dirApache。
两个TOMCAT目录:自行解压到dirTOMCATA和dirTOMCATB即可。
这两个安装过程就不详细说明了。
mod_jk-apache-2.2.4.so复制到APACHE安装目录下的modules目录(dirApache\modules)。
三、配置1、Apache配置1.1、 workers.properties配置在dirApache\conf下新建一个workers.properties文件,用记事本打开workers.properties文件,写入如下内容:代码:worker.list=loadbalancerworker.loadbalancer.type=lbworker.loadbalancer.balanced_workers=tomcat2,tomcat1worker.loadbalancer.sticky_session=trueworker.loadbalancer.sticky_session_force=true# Set properties for tomcat1 (ajp13)worker.tomcat1.type=ajp13worker.tomcat1.host=127.0.0.1worker.tomcat1.port=8019worker.tomcat1.lbfactor=20worker.tomcat1.cachesize=1000worker.tomcat1.cache_timeout=600worker.tomcat1.socket_keepalive=1#worker.tomcat1.reclycle_timeout=300worker.tomcat1.local_worker=1worker.tomcat1.socket_timeout=0worker.tomcat1.retries=3# Set properties for tomcat2(ajp13)worker.tomcat2.type=ajp13worker.tomcat2.host=127.0.0.1worker.tomcat2.port=8029worker.tomcat2.lbfactor=80worker.tomcat2.cachesize=1000worker.tomcat2.cache_timeout=600worker.tomcat2.socket_keepalive=1#worker.tomcat2.reclycle_timeout=300worker.tomcat2.local_worker=1worker.tomcat2.socket_timeout=0worker.tomcat2.retries=3其中worker.tomcat1.type =ajp13和worker.tomcat2.type=ajp13这个要记住,要和Tomcat下配置对应。
Tomcat集群与负载均衡

Tomcat集群与负载均衡(转载)在单一的服务器上执行WEB应用程序有一些重大的问题,当网站成功建成并开始接受大量请求时,单一服务器终究无法满足需要处理的负荷量,所以就有点显得有点力不从心了。
另外一个常见的问题是会产生单点故障,如果该服务器坏掉,那么网站就立刻无法运作了。
不论是因为要有较佳的扩充性还是容错能力,我们都会想在一台以上的服务器计算机上执行WEB应用程序。
所以,这时候我们就需要用到集群这一门技术了。
在进入集群系统架构探讨之前,先定义一些专门术语:1. 集群(Cluster):是一组独立的计算机系统构成一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信。
应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。
2. 负载均衡(Load Balance):先得从集群讲起,集群就是一组连在一起的计算机,从外部看它是一个系统,各节点可以是不同的操作系统或不同硬件构成的计算机。
如一个提供Web服务的集群,对外界来看是一个大Web服务器。
不过集群的节点也可以单独提供服务。
3. 特点:在现有网络结构之上,负载均衡提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。
集群系统(Cluster)主要解决下面几个问题:高可靠性(HA):利用集群管理软件,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。
高性能计算(HP):即充分利用集群中的每一台计算机的资源,实现复杂运算的并行处理,通常用于科学计算领域,比如基因分析,化学分析等。
负载平衡:即把负载压力根据某种算法合理分配到集群中的每一台计算机上,以减轻主服务器的压力,降低对主服务器的硬件和软件要求。
目前比较常用的负载均衡技术主要有:1. 基于DNS的负载均衡通过DNS服务中的随机名字解析来实现负载均衡,在DNS服务器中,可以为多个不同的地址配置同一个名字,而最终查询这个名字的客户机将在解析这个名字时得到其中一个地址。
Apache与tomcat的整合、负载均衡和加入启动和系统服务

Apache与tomcat的整合及负载均衡系统环境:Windows Server 2021 R2 SP1虚拟机环境:Red Hat Enterprise Linux Server release 5.4 (Tikanga) X64安装软件版本:JDK:1.6.0_19 Tomcat: Apache: JK:实施步调:一、安装软件。
1tar -xz2345./configure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared=most--with-mpm=worker6make7make install89/jk/native/1011./configure --with-apxs=/usr/local/apache2/bin/apxs12make13make install二、配置整合及负载均衡1 cp / /usr/local/apache2/modules2配置环境变量vi /etc/profile在文本末尾参加以下内容JAVA_HOME=JDK安装路径CATALINA_HOME=tomcat安装路径CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.PATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME CATALINA_HOME CLASSPATH PATH3应用初始的环境变量source /etc/profile4点窜以下几处而且在末尾加上:Include /usr/local/apache2/conf/ 5添加及设置vi /usr/local/apache2/增加以下内容#加载mod_jk ModuleJkLogLevel info载分配控制制器JkMount /* lb6添加及设置vi /usr/local/apache2/conf/添加以下内容worker.list = lb,tomcat1,tomcat2#server 列表#========tomcat1========worker.tomcat1.port=8009#ajp13 端标语,在tomcat下server.xml配置,默认8009#tomcat的主机地址,如不为本机,请填写ip地址worker.tomcat1.type=ajp13worker.tomcat1.lbfactor = 1#server的加权比重,值越高,分得的请求越多#========tomcat2========worker.tomcat2.port=8009#ajp13 端标语,在tomcat下server.xml配置,默认8009#tomcat的主机地址,如不为本机,请填写ip地址worker.tomcat2.type=ajp13worker.tomcat2.lbfactor = 1#server的加权比重,值越高,分得的请求越多#========controller,负载均衡控制器========worker.lb.type=lbworker.lb.balanced_workers=tomcat1,tomcat2#指定分担请求的tomcatworker.lb.sticky_session=17、将JSP文件放入/usr/local/tomcat/webapps/ROOT8 启动apache和tomcat8 翻开浏览器输入就是这么简单。
apach+tomcat系统整合说明

# ------------------------
worker.tomcat2.port=8011
worker.tomcat2.host=127.0.0.1
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor=10
worker.worker1.host=localhost
worker.worker1.port=8009
worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout---------
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=tomcat1,tomcat2
worker.loadbalancer.sticky_session=1
JkRequestLogFormat "%w %V %T"
JkMount /*.jsp ajp13w
JkMount /servlet/* ajp13w
JkMount /*.servlet ajp13w
JkMount /*.do ajp13w
JkMount /admin/* ajp13w
####### Defining a worker named worker1 and of type ajp13
worker.list=worker1
####### Set properties for worker1
Linux平台Apache高可用双机集群Tomcat负载均衡集群配置手册

Linux平台Apache双机高可用集群+ Tomcat负载均衡集群配置手册在这个配置手册中,使用的操作系统和软件清单如下:操作系统:RedHat Enterprise Linux AS4 U4 64bit(安装时最好选择完全安装)软件:jdk-1_5_0_15-linux-amd64.binTomcat5.5.26httpd-2.0.63.tar.gzjakarta-tomcat-connectors-jk2-src-current.tar.gzipvsadm-1.24.tar.gzlibnet.tar.gzheartbeat-2.1.3-3.el4.centos.x86_64.rpmheartbeat-pils-2.1.3-3.el4.centos.x86_64.rpmheartbeat-stonith-2.1.3-3.el4.centos.x86_64.rpm因为是linux操作系统,所以在安装软件时请使用对应自己操作系统内核的软件,这是整个集群成功的第一步。
本配置手册中的软件都是对应RedHat Enterprise Linux AS4 U4 64bit 这个版本的软件。
jdk-1_5_0_15-linux-amd64.binJAVA环境包使用的是64位1.5版Tomcat版本为公司指定的5.5版本Apache为2.0.63版jakarta-tomcat-connectors-jk2-src-current.tar.gz是连接Apache和Tomcat的连接插件,具体可以去Tomcat网站上查找下载ipvsadm-1.24.tar.gzlibnet.tar.gz这两个是用于2台Apache服务器虚拟一个IP地址使用heartbeat-2.1.3-3.el4.centos.x86_64.rpmheartbeat-pils-2.1.3-3.el4.centos.x86_64.rpmheartbeat-stonith-2.1.3-3.el4.centos.x86_64.rpm这3个软件是用于2台Apache服务器之间的心跳检测结构图Apache1以以以以以Tomcat1Tomcat2Apache22台Tomcat服务器使用Tomcat软件可以自己做集群,2台Apache服务器需要其他的软件实现虚拟服务器功能,工作站访问虚拟IP地址访问2台Apache服务器,再通过Apache服务器访问Tomcat服务器第3 页总13 页1.安装JAVA环境包1)输入命令:./ jdk-1_5_0_15-linux-amd64.bin执行完毕后,会在当前目录下生成一个JDK-1.5.0_15的文件夹2)在 /usr/local/下新建一个名字为JAVA文件夹,将个JDK-1.5.0_15的文件夹拷入到该文件夹下3)设置环境变量。
tomcatjavaee标准

tomcatjavaee标准Tomcat是一种开源的Java Servlet容器,被广泛用于部署和运行Java Web应用程序。
它是Apache软件基金会中的一个项目,是一个轻量级的、以Java Servlet和JavaServer Pages(JSP)技术为基础的Web容器。
JavaEE(Java Platform, Enterprise Edition)是一种基于Java的企业级应用开发平台,为企业级应用提供了一套全面而完整的解决方案。
JavaEE定义了一系列的规范和API,用于开发、部署和运行大规模、复杂的企业应用。
Tomcat是JavaEE平台的一个关键组件,它实现了JavaEE规范中的一部分,特别是Servlet和JSP规范。
在基于Tomcat的JavaEE应用中,开发人员可以使用Servlet和JSP技术来处理请求、生成动态内容和呈现视图。
由于Tomcat的轻量级和高性能特性,它成为了部署和运行JavaEE应用的理想选择。
在Tomcat中部署JavaEE应用非常简单。
开发人员只需将编译后的Servlet和JSP文件打包为一个WAR(Web Application Archive)文件,然后将其部署到Tomcat的webapps目录下。
Tomcat会自动解压WAR文件,并将其中的Servlet和JSP文件部署到适当的位置。
开发人员还可以通过配置Tomcat的server.xml和web.xml文件来定制化部署过程。
Tomcat还提供了一些管理工具,用于监控和管理部署在Tomcat上的JavaEE应用。
例如,Tomcat Manager是一个基于Web的管理应用,可以用于启动、停止、重新加载和卸载应用,以及查看应用的运行状态和日志信息。
此外,Tomcat还提供了JMX(Java Management Extensions)接口,允许开发人员使用JMX工具来监控和管理Tomcat的各个方面。
apache负载均衡

模拟环境部署文档一、本部署文档所使用软件列表文件服务器群组负载均衡服务器:apache2.2文件服务器群组文件服务器:apache2.2Java web应用服务器群组负载均衡服务器:apache2.2Java web应用服务器群组应用服务器:tomcat5.5地市文件服务器:tomcat5.5二、apache负载均衡apache文件服务器群组配置(在服务器192.168.2.241)Apache实例明细:负载均衡apache:名称<apacheB>文件服务apache:名称<apacheFile1>,<apacheFile2>1、安装apache,作为主服务器(apacheB),假设安装路径在E:\apche2.2,http监听端口80,2、拷贝两份apache文件目录(即E:\apche2.2),分别命名为apacheFile1和apacheFile2,用作文件服务器。
3、修改apacheFiel1目录下的conf中的httpd.conf,将配置文件中的路径都改为E:\apacheFile1,将文件中的Listen 80和ServerName localhost:80这两个地方修改为1010,web应用路径E:\apache\web\main4、修改E:\apacheFile1\htdocs\index.html,将内容改为It works! 1010以便之后测试时区分。
5、运行cmd命令,到E:\apacheFile1\bin目录下,执行httpd -k install -n"apacheFile1" -f " E:\apacheFile1\conf\httpd.conf",这样就在系统在注册了名为“apacheFile1”的服务6、对apacheFile2目录做第3、4、5步的类似操作,将端口修改为2020,新建服务apacheFile27、修改主服务器(apacheB)配置文件E:\apche2.2\conf\httpd.conf,将其中的#监测主服务器状态插件LoadModule status_module modules/mod_status.so#负载均衡插件LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule proxy_balancer_module modules/mod_proxy_balancer.so 前的#注释符去掉并在文件最后增加以下内容#停止正向代理功能ProxyRequests Off#不进行反向代理的路径ProxyPass /server-status !ProxyPass /balancer-manager !ProxyPass / balancer://file/ stickysession=jsessionid nofailover=On<proxy balancer://file/>BalancerMember http://localhost:1010 loadfactor=1BalancerMember http://localhost:2020 loadfactor=1</proxy>#监测主服务器状态<Location /server-status>SetHandler server-statusOrder Deny,AllowDeny from allAllow from all</Location>#监测负载均衡状态<Location /balancer-manager>SetHandler balancer-managerOrder Deny,AllowDeny from allAllow from all</Location>8、运行apache2.2下的bin目录中的ApacheMonitor.exe,分别运行apache2.2,apacheFile1,apacheFile2三个服务9、测试A、打开一个浏览器窗口,访问http://localhost,如果看到输出It works!1010或者It works! 2020,则表示负载均衡配置成功,不断地刷新页面,服务器会轮流将请求转发给1010和2020负载服务器B、访问http://localhost/ server-status可以查看主服务器运行状态C、访问http://localhost/ balancer-manager可以查看各节点的工作运行状态三、文件服务器的压缩响应说明:文件服务使用apache的反向代理负载均衡,用户发出的请求,通过apacheB负载均衡发送请求给apacheFile1或者apacheFile2, apacheFile1或apacheFile2响应数据到apacheB, apacheB进行后续的响应发送数据给客户端,居于此,我们在apacheFile1,apacheFile2启用文件压缩功能(减少负载均衡apache的压力),进行用户的请求响应修改apacheFile1,apacheFile2服务器配置文件httpd.conf,启用文件压缩插件,将其中的LoadModule deflate_module modules/mod_deflate.soLoadModule headers_module modules/mod_headers.so前的#注释符去掉apacheFile1,apacheFile2的httpd.conf的文件末尾增加响应压缩配置内容<Location /># Insert filterSetOutputFilter DEFLATE# Netscape 4.x has some problems...BrowserMatch ^Mozilla/4 gzip-only-text/html# Netscape 4.06-4.08 have some more problemsBrowserMatch ^Mozilla/4\.0[678] no-gzip# MSIE masquerades as Netscape, but it is fine# BrowserMatch \bMSIE !no-gzip !gzip-only-text/html# NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48# the above regex won't work. You can use the following# workaround to get the desired effect:BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html# Don't compress imagesSetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary# Make sure proxies don't deliver the wrong contentHeader append Vary User-Agent env=!dont-vary</Location>四、apache文件服务器缓存说明:文件服务使用apache的反向代理负载均衡,用户发出的请求,通过apacheB负载均衡发送请求给apacheFile1或者apacheFile2, apacheFile1或apacheFile2响应数据到apacheB, apacheB进行后续的响应发送数据给客户端,居于此,我们在apacheFile1,apacheFile2启用文件缓存功能(减少负载均衡apache的压力),进行用户的请求响应1、内存缓存方式A、启用内存缓存插件,将apacheFile1,apacheFile2的httpd.conf中LoadModule mem_cache_module modules\mod_mem_cache.so前的#注释符去掉B、在apacheFile1,apacheFile2的httpd.conf末尾增加内存缓存的配置信息MCacheMaxObjectCount 13001MCacheMaxObjectSize 6400000# 指定最大流式化响应可缓冲长度为64KB:MCacheMaxStreamingBuffer 65536MCacheMinObjectSize 10000MCacheRemovalAlgorithm GDSFMCacheRemovalAlgorithm LRUMCacheSize 7000002、硬盘缓存方式A、启用硬盘缓存插件,将apacheFile1,apacheFile2的httpd.conf中LoadModule expires_module modules/mod_expires.soLoadModule file_cache_module modules/mod_file_cache.soLoadModule headers_module modules/mod_headers.soLoadModule proxy_module modules/mod_proxy.soLoadModule proxy_http_module modules/mod_proxy_http.soLoadModule cache_module modules/mod_cache.soLoadModule disk_cache_module modules/mod_disk_cache.soLoadModule jk_module modules\mod_jk-1.2.27-httpd-2.2.10.so前的#注释符去掉B、在apacheFile1,apacheFile2的httpd.conf末尾增加硬盘缓存的配置信息#cache配置##cache文件存放目录CacheRoot "C:/cache"#启用cache调用的url根CacheEnable disk /CacheEnable fd /#不启用cache的配置,对/下的应用不进行缓存# CacheDisable /#CacheDirLevels指定了子目录的层数,CacheDirLength指定了每级子目录名的字符数。
apache2.4.3的安装以及整合tomcat

操作准备:(1)安装apache-tomcat-6.0.20到 /opt 下,并修改名字为tomcat(很简单直接解压就行了,再次不再赘述)(2)上传以下安装包到opt下(如果已经存在则不用上传)(3)如果机器上没有安装过apache则直接跳到安装apache的步骤进行操作停止现在的apache服务:[root@localhost local]# cd /opt/apache/bin[root@localhost bin]# ./apachectl stop修改现有apache端口:[root@localhost bin]# cd /opt/apache/conf[root@localhost conf]# vi httpd.conf找到 Listen 80改为 Listen 81备注: 修改文件操作是光标定格到80后面然后按下i键,即可进行修改修改完毕,按下Esc键然后输入 :wq (wq前面有个冒号)开始安装apache:[root@localhost ~]# cd /opt //源码存放位置[root@localhost opt]# tar -zxvf apr-1.4.6.tar.gz[root@localhost opt]# cd apr-1.4.6[root@localhost apr-1.4.6]# ./configure --prefix=/usr/local/apr可能遇见的情况如下:如果出现以下错误则编辑libtool将 $echo 替换为$ECHO具体操作::%s#$echo#$ECHO#groot@localhost apr-1.4.6]# makeroot@localhost apr-1.4.6]# make installroot@localhost apr-1.4.6]# cd /optroot@localhost opt]# tar -zxvf apr-util-1.5.1.tar.gzroot@localhost opt]# cd apr-util-1.5.1root@localhost apr-util-1.5.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/aprroot@localhost apr-util-1.5.1]# makeroot@localhost apr-util-1.5.1]# make installroot@localhost apr-util-1.5.1]# cd /optroot@localhost opt]# unzip -o pcre-8.30.ziproot@localhost opt]# cd pcre-8.30root@localhost cd pcre-8.30]# ./configure --prefix=/usr/local/pcreroot@localhost cd pcre-8.30]# makeroot@localhost cd pcre-8.30]# make installroot@localhost cd pcre-8.30]# cd /opt[root@localhost opt]# tar -zxvf httpd-2.4.3.tar.gz[root@lamp opt]# cp -rf apr-1.4.6 httpd-2.4.3/srclib/apr[root@lamp opt]# cp -rf apr-util-1.5.1 httpd-2.4.3/srclib/apr-util 这两句话是为了防止,安装时报如下错误Configur:error:Bundled APR requested but not found at ./srclib/. Download …[root@localhost opt]# cd httpd-2.4.3[root@localhost httpd-2.4.3]# ./configure --prefix=/usr/local/apache --enable-so –enable-mods-shared=most --with-mpm=worker --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --with-included-apr加入--with-included-apr为了防止apache启动报错:例如httpd: Syntax error on line 140 of /usr/local/apache2/conf/httpd.conf: Cannot load/usr/local/apache2/modules/mod_dir.so into server: /usr/local/apache2/modules/mod_dir.so: undefined symbol: apr_array_clear[root@localhost httpd-2.4.3]# make[root@localhost httpd-2.4.3]# make installroot@localhost httpd-2.4.3]#cd /usr/local/apache //进入apache的目录root@localhost apache]# cd conf/root@localhost conf]#cp -a httpd.conf httpd.conf- //备份apache配置文件启动apache服务:用于查看是否正确安装apacheroot@localhost conf]#cd /usr/local/apache/binroot@localhost bin]# ./apachectl start然后打开浏览器输入http://localhost:80进行查看Apache与tomcat的整合:root@localhost bin]# cd /optroot@localhost opt]# tar –zxvf tomcat-connectors-1.2.37-src.tar.gzroot@localhost opt]# cd tomcat-connectors-1.2.37-src/nativeroot@localhost native]# ./configure --with-apxs=/usr/local/apache/bin/apxsroot@localhost native]# makeroot@localhost native]# cp ./apache-2.0/mod_jk.so /usr/local/apache/modules/ root@localhost native]# cd/usr/local/apache/confroot@localhost conf]# ls创建 mod_jk.conf和workers.properties 这两个文件到此conf 文件夹中创建mod_jk.confvi mod_jk.confJkWorkersFile /usr/local/apache/conf/workers.properties# Where to put jk logsJkLogFile /usr/local/apache/logs/mod_jk.log# Set the jk log level [debug/error/info]JkLogLevel info# Select the log formatJkLogStampFormat "[%a %b %d %H:%M:%S %Y]"# JkOptions indicate to send SSL KEY SIZE,#JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories # JkRequestLogFormat set the request formatJkRequestLogFormat "%w %V %T"JkMount /servlet/* worker1JkMount /*.jsp worker1创建workers.propertiesvi workers.properties# Defining a worker named worker1 and of type ajp13worker.list=worker1worker.worker1.type=ajp13worker.worker1.host=localhostworker.worker1.port=8009worker.worker1.lbfactor=50worker.worker1.cachesize=1worker.worker1.cache_timeout=600worker.worker1.socket_keepalive=1worker.worker1.socket_timeout=300保存退出root@localhost conf]# vi httpd.conf修改DocumentRoot 为 (我的网页放在/opt/sgcc_web/ 下)"/opt/sgcc_web"下面的那一个Directory 节点也改为 "/opt/sgcc_web"跳到文件末尾找到SSLRandomSeed startup builtinSSLRandomSeed connect builtin</IfModule>删除此节点以后的全部内容,并追加以下两句话LoadModule jk_module modules/mod_jk.soInclude /usr/local/apache/conf/mod_jk.conf如下图:然后找到以下两句,删除前面的#号#LoadModule ssl_module modules/mod_ssl.so#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so 第一句话是防止apache启动时报以下错误AH00526: Syntax error on line 51 of /usr/local/apache2/conf/extra/httpd-ssl.conf: Invalid command 'SSLCipherSuite', perhaps misspelled or definedby a module not included in the server configuration第二句话是防止apache启动时报以下错误AH00526: Syntax error on line 76 of /usr/local/apache2/conf/extra/httpd-ssl.conf: SSLSessionCache: 'shmcb' session cache not supported (knownnames: ). Maybe you need to load the appropriate socache module(mod_socache_shmcb?).保存,apache配置结束!最后编辑Tomcat的配置文件server.xml,在HOST段中加入:在http://localhost:8080/和http://localhost:80/index.jsp,应该可以看到相同的页面了。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Apache与tomcat的整合、负载均衡和加入启动和系统服务系统环境:Windows Server 2008 R2 SP1虚拟机软件:Hyper-V治理器6.1.7601.17514虚拟机环境:Red Hat Enterprise Linux Server release 5.4 (Tikanga) X64安装软件版本:JDK:1.6.0_19 Tomcat:6.0.20 Apache:2.2.19 JK: 1.2.10实施步骤:一、安装软件。
tar -xzvf jdk1.6.0_19.tar.gztar xvfz tomcat.tar.gztar zxvf httpd-2.2.19.tar.gzcd httpd-2.2.19./configure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared =most --with-mpm=workermakemake installtar zxvf jakarta-tomcat-connectors-1.2.10-src.tar.gzcd jakarta-tomcat-connectors-1.2.10-src/jk/native/./buildconf.sh./configure --with-apxs=/usr/local/apache2/bin/apxsmakemake install二、配置整合及负载均衡1 cp /usr/local/jakarta-tomcat-connectors-1.2.10-src/jk/native/apache-2.0/ mod_jk.so /usr/local/apache2/modules配置环境变量vi /etc/profile在文本末尾加入以下内容JA V A_HOME=JDK安装路径CATALINA_HOME=tomcat安装路径CLASSPATH=.:$JA V A_HOME/lib/dt.jar:$JA V A_HOME/lib/tools.jar:$CA TALINA_HOME/lib/servlet-api.jarPATH=$JA V A_HOME/bin:$PATHexport JA V A_HOME CATALINA_HOME CLASSPATH PATH应用初始的环境变量source /etc/profile修改apache的httpd.confvi /usr/local/apache2/conf/httpd.conf修改以下几处同时在末尾加上:Include /usr/local/apache2/conf/mod_jk.conf添加及设置mod_jk.confvi /usr/local/apache2/mod_jk.conf增加以下内容#加载mod_jk ModuleLoadModule jk_module modules/mod_jk.so#指定workers.properties文件路径JkWorkersFile conf/workers.propertiesJkLogFile logs/mod_jk.logJkLogLevel info#指定那些要求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配操纵制器JkMount /* lb添加及设置workers.propertiesvi /usr/local/apache2/conf/workers.properties添加以下内容worker.list = lb,tomcat1,tomcat2#server 列表#========tomcat1========worker.tomcat1.port=8009#ajp13 端口号,在tomcat下server.xml配置,默认8009worker.tomcat1.host=10.1.1.2#tomcat的主机地址,如不为本机,请填写ip地址worker.tomcat1.type=ajp13worker.tomcat1.lbfactor = 1#server的加权比重,值越高,分得的要求越多#========tomcat2========worker.tomcat2.port=8009#ajp13 端口号,在tomcat下server.xml配置,默认8009worker.tomcat2.host=10.1.1.3#tomcat的主机地址,如不为本机,请填写ip地址worker.tomcat2.type=ajp13worker.tomcat2.lbfactor = 1#server的加权比重,值越高,分得的要求越多#========controller,负载均衡操纵器========worker.lb.type=lbworker.lb.balanced_workers=tomcat1,tomcat2#指定分担要求的tomcatworker.lb.sticky_session=17、将JSP文件放入/usr/local/tomcat/webapps/ROOT8 启动apache和tomcat8 打开扫瞄器输入http://apache服务器的地址或者localhost/index.jsp确实是这么简单。
三、将apache和tomcat加入启动和系统服务选项1 Apache加入启动项里面:echo '/usr/local/apache2/bin/apachectl start ' >> /etc/rc.local2 Apache加入到系统服务里面:cp /安装名目下/apache/bin/apachectl /etc/rc.d/init.d/httpd修改httpd在文件头部加入如下内容:#### Comments to support chkconfig on RedHat Linux# chkconfig: 2345 90 90# description:http server###储存在打入chkconfig --add httpdchkconfig --level 345 httpd ontomcat加入启动和系统服务选项安装jsvc#cd /usr/local/tomcat/bin#tar xvfz jsvc.tar.gz#cd jsvc-src#sh support/buildconf.sh#chmod 755 configure#./configure --with-java=/usr/local/java (改成你的JDK的位置) #make注:我在執行./configure --with-java=/usr/local/java 的過程中,產生"co nfigure: error:no acceptable C compiler found in $PATH "這樣的錯誤提示,發現是沒有安裝C編譯器,因此執行“yum install gcc”安裝了gcc,之后重新執行./configure --with-java=/usr/local/java 就Ok了修改启动文件#vi ./native/Tomcat5.sh改成如下内容:#!/bin/sh# chkconfig: 345 87 13# description: Tomcat Daemon# processname: jsvc# pidfile: /var/run/jsvc.pid# config:# Source function library.# . /etc/rc.d/init.d/functions# prog=tomcat# Small shell script to show how to start/stop Tomcat using jsvc# If you want to have Tomcat running on port 80 please modify the server.xml# file:# port="80" minProcessors="5" maxProcessors="75"# enableLookups="true" redirectPort="8443"# acceptCount="10" debug="0" connectionTimeout="60000"/># You need a developement version of Tomcat (Apache Tomcat/4.1-d ev)# Adapt the following lines to your configuration############################################################ #################### Copyright 2004 The Apache Software Foundation.## Licensed under the Apache License, Version 2.0 (the "License");# you may not use this file except in compliance with the Licens e.# You may obtain a copy of the License at### Unless required by applicable law or agreed to in writing, softw are# distributed under the License is distributed on an "AS IS" BASI S,# WITHOUT W ARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.# See the License for the specific language governing permissions and# limitations under the License.############################################################ #################### Small shell script to show how to start/stop Tomcat using jsvc# If you want to have Tomcat running on port 80 please modify the server.xml# file:## <!-- Define a non-SSL HTTP/1.1 Connector on port 80 --># <Connector className="org.apache.catalina.connector.http.HttpCon nector"# port="80" minProcessors="5" maxProcessors="75"# enableLookups="true" redirectPort="8443"# acceptCount="10" debug="0" connectionTimeout="6 0000"/>## That is for Tomcat-5.0.x (Apache Tomcat/5.0)## Adapt the following lines to your configurationJA V A_HOME=/usr/local/jdkCATALINA_HOME=/usr/local/tomcatDAEMON_HOME=/usr/local/tomcat/binTOMCAT_USER=root# for multi instances adapt those lines.TMP_DIR=/var/tmpPID_FILE=/var/run/jsvc.pidCATALINA_BASE=/usr/local/tomcatCATALINA_OPTS=CLASSPATH=\$JA V A_HOME/lib/tools.jar:\$CATALINA_HOME/bin/commons-daemon.jar:\$CATALINA_HOME/bin/bootstrap.jarcase "$1" instart)## Start Tomcat#$DAEMON_HOME/jsvc-src/jsvc \-user $TOMCAT_USER \-home $JA V A_HOME \-Dcatalina.home=$CATALINA_HOME \-Dcatalina.base=$CATALINA_BASE \-Djava.io.tmpdir=$TMP_DIR \-wait 10 \-pidfile $PID_FILE \-outfile $CATALINA_HOME/logs/catalina.out \ -errfile '&1' \$CATALINA_OPTS \-cp $CLASSPATH \org.apache.catalina.startup.Bootstrap## To get a verbose JVM#-verbose \# To get a debug of jsvc.#-debug \exit $?;;stop)## Stop Tomcat#$DAEMON_HOME/jsvc-src/jsvc \-stop \-pidfile $PID_FILE \org.apache.catalina.startup.Bootstrapexit $?;;*)echo "Usage tomcat.sh start/stop"exit 1;;esac拷贝启动文件#cp ./native/Tomcat5.sh /etc/init.d/tomcat5 #chmod -c 777 /etc/init.d/tomcat5添加服务#chkconfig --add tomcat5#chkconfig --level 345 tomcat5 on完成,启动服务#service tomcat5 start这时重启系统,tomcat也就会自动启动了。