第一大步:先安装 openssl
因为要apache与SSL整合,而apache安装之前要用OpenSSL的路径作参数:所以要先装openssl(下载不说,我的版本:openssl0.9.8)
1: tar zvxf openssl-0.9.8.tar.gz
2: cd openssl-0.9.8
3: ./Configure (这一步是我最恨的地方了,32位的机器用这个命令没有问题,如果你的机器是64位,请用: ./config -
-prefix=安装目录)
4: make (这一步很慢啊,如果你的一下就完成,80%你的没装好。)
5: make install (这是安装的最后一步,默认的安装目录: /usr/local/ssl,
如果有,就说明安装成功,如果你不想让他安装在
这个目录,你必须在第三步 ./Configure 后面加参数指点安装目录,参数名称就你用 ./Configure --help 看看吧。)
第二大步:安装apache
apache是我三年程序开发第一次搞这个东西。不知道怎么搞,看了好久,有点眉目:(下载不不说了,你连东西都下载不了,你还装个
鸟。)
1: tar -zvxf httpd-2.2.9.tar.gz (这一步执行完成以后是解压了apache压缩包,现在的问题是:在安装apache之前要先安装apr 和
apr-util.这二个东西在apache 的安装包里面了。APR(Apache portable Run-time libraries,Apache可移植运行库))
分支一:APR的安装:
1: cd httpd-2.2.9
2: cd srclib
3: cd apr
4: ./configure --prefix=/usr/httpd/apr (安装APR的目录)
5: make
6: make install (执行完这一步以后就在/usr/httpd下面有一个apr的目录,表示安装成功!)
分支二:APR-UTIL的安装
1:cd httpd-2.2.9
2: cd srclib
3: cd apr-util
4: ./configure --prefix=/usr/httpd/apr-util --with-apr=/usr/httpd/apr (--with-apr 后面的参数就是你
前面安装apr的路径)
5: make (如果你的--with-apr参数写错,在执行这一步的时候出错:下面是错误信息
linux-web:/tool/httpd-2.2.9/srclib/apr-util # make
make: *** No targets specified and no makefile
found. Stop.
)
6: make install (这一步执行完成以后,在/usr/httpd/目录下面就有一个apr-util的文件夹。下面是正式开始安
装apache了)
2: cd httpd-2.2.9
3: (这一步是正式安装apache目录了 configurer后面跟的安装参数,也是我花费时间比较长的一步:简单说明
--prefix :安装路径
--enable-so :指明编译动态加载模块(DSO)支
持到httpd二进制文件(如果你不明白什么意思,我可以集大体的说一下,就是apache有许多的模块,例如:SSL,mdjk,他有二种加载
,动态和静态,这一句应该 就是让动态加载,我个人是这么认为的。)
--enable-module :加载所有模块
--with-apr :你安装apr的目录
--with-apr-util :你安装apr-util的目录
--enable-ssl :static (加载ssl模块 需要其
他模块就查看帮助: ./configure --help)
--with-ssl :openssl的安装目录
--sysconfdir :httpd.conf的放置目录(这个
参很很重,只要记得他 --prefix的值一样就可以了)
)
./configure --prefix=/usr/httpd/apache2
--sysconfdir=/usr/httpd/apache2/conf
--with-ssl=/usr/local/ssl
--enable-so
--enable-modules=all
--with-apr=/usr/httpd/apr
--with-apr-util=/usr/httpd/apr-util
/*
./configure --prefix=/usr/httpd/apache2
--sysconfdir=/usr/httpd/apache2/conf
--with-ssl=/usr/local/ssl
--enable-so
--enable-ssl
--with-apr=/usr/httpd/apr
--with-apr-util=/usr/httpd/apr-util
(最终)
./configure --prefix=/usr/httpd/apache2 --enable-modules="rewrite expires cache file-cache disk-cache mem
-cache proxy proxy-connect.proxy-ftp proxy-http proxy-ajp proxy-balancer" --enable-ssl --with-apr=/usr/httpd/apr --
with-ssl=/usr/local/ssl --with-mpm=worker --with-apr-util=/usr/httpd/apr-util --sysconfdir=/usr/httpd/apache2/conf
--enable-so
*/
4:make
5:make install (这步执行完成以后就可以到 /usr/httpd/apache2/bin 的目录下面)
6:./apachectl start (如果回车以后马什么也没有提示,表示你的apache HTTP Server已经启动:在IE中输入:
http://IP地址 ,页面如果出现:It works! 表示apache启动成功!)
第三步:apache 与 SSL的整合 :我们下面就要配置 apache的 httpd.conf文件了.
1: cd .../apache2/conf/
2: vi httpd.conf
A:(修改:DocumentRoot 为你的项目所在路径 我的为 DocumentRoot "/www/ROOT")
B:(修改: <Directory "/usr/httpd/apache2/htdocs"> 改为<Directory "/www/ROOT">)
C:(找到 Include conf/extra/httpd-ssl.conf 去掉前面的 #号 到了这一步,保存修改,我们
就要用到我们第一大步开始装的openssl了。下面是对 openssl生成证书的操作:具体步骤我不说了,网上一大堆:)
C1:cd /usr/local/ssl/bin 在这个目录下面生成二个文件:一个密
钥(server.key),一个认证文件 (server.crt)
C2: 将这二个文件放到 ..../apache2/conf下面
C3: 找到:#Include conf/extra/httpd-ssl.conf ,去掉前面的#号
C3: ./openssl genrsa -des3 -out server.key 2048
C5: ./openssl req -new -key server.key -out server.crs -
config /etc/ssl/openssl.cnf
C4: openssl ca -in server.crs -out server.crt -cert
server.crt -keyfile server.key -config /etc/ssl/config.cnf
C5:
D:修改 (apache目录/conf/extra/httpd-ssl.conf)如下:
SSLCertificateFile /usr/local/apache/conf/ssl.crt/server.crt
指定服务器证书key位置
SSLCertificateKeyFile
/usr/local/apache/conf/ssl.crt/server.key
证书目录
第三步: 安装tomcat,我用的apache-tomcat-6.0.16.tar.gz.
1: tar -zvxf apache-tomcat-t.0.16.tar.gz
2: mv apache-tomcat-6.0.16 /usr/httpd/tomcat1
3: tar -zvxf apache-tomcat-t.0.16.tar.gz
4: mv apache-tomcat-6.0.16 /usr/httpd/tomcat2
第四步: tomcat 和apache集群:(个人理解:apache接受客户端请求,对后台操作的请求分发给各个集群的tomcat)
1: cd /usr/httpd/tomcat1/conf
2: vi server.xml
(找到:<Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">,去掉上下的注释,改jvm1为
tomcat1,找到:<Service name="Catalina">,修改
Catalina为tomcat1,找到:<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> 修改8009为
8010,8443为8410 找到:Connector port="8080",修改:8080为8800,注释掉这一行:<Engine name="Catalina"
defaultHost="localhost">);
3: cd /usr/httpd/tomcat2/conf
(找到:<Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">,去掉上下的注释,改jvm1为
tomcat2,找到:<Service name="Catalina">,修改
Catalina为tomcat1,找到:<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> 修改8009为
8011,8443为8411 找到:Connector port="8080",修改:8080为8801,,注释掉这一行:<Engine name="Catalina"
defaultHost="localhost">
找到:<Server port="8005" shutdown="SHUTDOWN">,修改8005为8006);
4: cd /usr/httpd/apache2/conf
5: vi workers.properties (创建新文件,内容如下)
worker.list=loadbalancer
worker.tomcat1.port=8010 #这里是tomcat1的ajp端口
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor=1
worker.tomcat2.port=8011 #这里是tomcat2的ajp端口
worker.tomcat2.host=localhost
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor=1
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=tomcat1,tomcat2
worker.loadbalancer.sticky_session=1 (我测试,这里的值为1是session共享,0为非
session共享)
6: cd /usr/httpd/apache2/conf/extra/
7: vi /usr/httpd/apache2/conf/extra/mod-jk.conf
mod-jk.conf 信息如下:
<IfModule mod_jk.c>
JkWorkersFile /usr/httpd/apache2/conf/workers.properties #(集群配置信息)
JkLogFile /usr/httpd/apache2/logs/mod_jk.log #(日志信息)
JkLogLevel warning
#(日志等级)
</IfModule>
#......
<IfModule mod_jk.c>
JkMount /*.jsp loadbalancer
#apache接收到请求转发给tomcat的类型(我定义的是jsp和
action)
JkMount /*.action loadbalancer
#JkMount /* loadbalancer
</IfModule>
#.......
DirectoryIndex index.jsp
8: 安装mod_jk模块
A:下载tomcat-connectors-1.2.26-src.tar.gz,执行:
A1: tar zvxf tomcat-connectors-1.2.26-src.tar.gz
A2: cd tomcat-connectors-1.2.26-src/native
A3: ./configure --with-apxs=/usr/httpd/apache2/bin/apxs
A4: make
A5: cp ./apache-2.0/mod_jk.so /usr/httpd/apache2/modules/ 到这
一步就可以用apache和tomcat集群了,用是https访问的时候jsp和action的请求还不能转给tomcat.
9: vi /usr/httpd/apache2/conf/extra/httpd-ssl.conf 加 TransferLog
"/usr/httpd/apache2/logs/access_log" 下面二行代码:
JkMount /*.jsp loadbalancer
JkMount /*.action loadbalancer
总结:
1:启动apache 碰到下面问题:Invalid command 'SSLPassPhraseDialog', perhaps misspelled or defined by
a module not included in the server configuration,到apache2的bin 目录下面执行 ./httpd -l 看看有没有mode_ssl.c,这个
错误说明ssl模块安装没有成功!
--enable-proxy :安装apache proxy 模块
--enable-proxy-ajp :安装apache proxy ajp模块
--enable-proxy-balancer :安装apache proxy balancer 模块
--enable-MODULE=shared :MMODULE编译为DSO(可用于所有模块)
--enable-MODULE=static 将MODULE静态连接进核心(仅用于扩展和实验模块)
分享到:
相关推荐
Apache2.2与Tomcat6.0的组合可以构建一个高效、可靠的负载均衡服务器系统,以分散客户端请求到多个后端应用服务器,提高整体服务的可用性和响应速度。以下是搭建和配置的关键步骤及知识点: 1. **Apache2.2安装配置...
总结来说,Apache 2.2 与 Tomcat 6.0 集群和负载均衡的配置是一项复杂但至关重要的任务,涉及到服务器复制、会话共享、负载均衡策略以及故障恢复等多个环节。通过精心设计和实施,可以构建出稳定、高效的Web服务环境...
### Apache和Tomcat集群配置详解 #### 一、软件准备 在进行Apache和Tomcat集群配置之前,首先需要准备所需的软件资源。...通过以上步骤,可以成功搭建Apache和Tomcat集群,实现高效的Web应用服务器环境。
在这种背景下,采用Apache作为前端Web服务器与Tomcat作为后端应用服务器进行集群部署成为一种常见的解决方案。 #### 技术选型 - **Apache版本**: Apache 2.2.x - **Tomcat版本**: Tomcat 6.0 或 Tomcat 7.0 - **...
在Apache2.2+Tomcat集群中,可以实现会话复制,确保用户在集群中的任何一台服务器上都能继续其之前的会话。Tomcat的集群功能依赖于org.apache.catalina.ha.session.JvmRouteBinderValve,它添加了JVM路由信息到...
【标题】:“Web服务器 Tomcat 6.0” 【描述】:“Tomcat 6.0 是一款广泛应用的开源Web服务器和Servlet容器,以其轻量级、高效和稳定性著称。它实现了Java Servlet和JavaServer Pages(JSP)技术,是Java EE应用...
- **Tomcat**: 选择Tomcat5.5或Tomcat6.0版本。 #### 二、Apache配置 在进行Apache配置时,主要涉及对`httpd.conf`文件的修改和`workers.properties`文件的创建。 ##### 1. httpd.conf配置 - 将`mod_jk.so`文件...
标题中的“tomcat6.0”指的是Apache Tomcat 6.0版本,这是一个开源的Java Servlet容器,主要用于部署和运行Java EE(Enterprise Edition)应用程序,特别是JSP(JavaServer Pages)和Servlet。Tomcat作为轻量级应用...
Java的Tomcat 6.0版本是一款广泛应用的开源Web服务器和Servlet容器,它以其轻量级、高效和易于管理的特性,在Java Web开发领域占据重要地位。Tomcat是Apache软件基金会Jakarta项目的一部分,它实现了Java Servlet和...
这个“apachetomcat6.0.rar”压缩包包含了Tomcat 6.0的安装程序,对于需要在服务器上搭建Java Web环境的开发者或者系统管理员来说非常实用。 首先,让我们详细了解Tomcat。Apache Tomcat是Apache软件基金会的项目之...
Tomcat 6.0是一款广泛应用的开源Java Web服务器,由Apache软件基金会维护,它实现了Java Servlet和JavaServer Pages(JSP)规范,为Java Web应用程序提供了一个轻量级且高效的运行环境。在Java Web开发领域,Tomcat...
2. 安装Tomcat服务器,使用apache-tomcat-6.0以上版本。 3. 安装mod_jk插件,下载并安装mod_jk-1.2.31-httpd-2.2.3.so。 4. 配置Apache和Tomcat服务器,编辑httpd.conf文件,添加mod_jk.conf文件,并配置workers....
Tomcat 6.0是Apache软件基金会旗下的一个开源项目,作为Java Servlet和JavaServer Pages(JSP)的容器,它在Web服务器领域有着广泛的应用。官方文档是对Tomcat服务器使用的重要指南,为开发者提供了详尽的配置、管理...
安装Tomcat 6.0通常涉及解压下载的文件到指定目录,然后根据需要配置`conf/server.xml`文件,该文件定义了服务器的端口、监听地址、虚拟主机等关键设置。同时,可以通过修改`webapps`目录下的`context.xml`来配置每...
Tomcat6.0作为Apache软件基金会的一个开源项目,是Java Servlet和JavaServer Pages(JSP)技术的标准实现,广泛应用于各类Web应用服务器领域。本篇文章将深入探讨Tomcat6.0的核心特性,并结合实际应用场景,解析其...
10. **集群和负载均衡**:Tomcat 6.0虽然较旧,但仍然支持简单的集群和负载均衡配置,可以在多台服务器之间共享会话和负载分配。 11. **错误处理和异常处理**:源码中展示了如何处理HTTP状态码、自定义错误页面以及...
Apache Tomcat 6.0是Apache软件基金会的一个开源项目,主要用作Java Servlet和JavaServer Pages(JSP)的Web应用服务器。它实现了Java EE的Servlet和JSP规范,为开发和部署Java Web应用程序提供了基础平台。Apache ...