1、由于Apache http对静态页面的处理能力强,据说可能承受日访问量100万
2、可以将请求转发给另外服务器:如Tomcat(支持同时启动多个Tomcat,对它们进行管理)
3、任意切换只需3秒,防止项目上线影响生产,并且保持多个版本的项目在不同的tomcat下,如新上线的项目有问题,马上可以切换到上一版本
第一步:准备工作下载相关软件
1、Apache HTTP Server (httpd) 2.2.17下载
http://labs.renren.com/apache-mirror//httpd/binaries/win32/httpd-2.2.17-win32-x86-openssl-0.9.8o.msi
2、Tomcat6.0.29下载
http://labs.renren.com/apache-mirror/tomcat/tomcat-6/v6.0.29/bin/apache-tomcat-6.0.29-windows-x86.zip
3、mod_jk-1.2.31-httpd-2.2.3:http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.31/mod_jk-1.2.31-httpd-2.2.3.so
第二步:安装Apache(httpd-2.2.17-win32-x86-openssl-0.9.8o.msi)
安装目录:D:\Program Files\Apache2.2\
1、此处注意,如果你本机已经装了iis并且占用80端口,务必先在服务中将iis停止或禁用。软件默认安装即可。安装过程中设置Network Domain和Server Name为localhost,
设置你的email地址,下方会让你选择only for the current user或for all users。默认选择for all users。这样Apache就会占用80端口,并且做为一个系统服务开机自运
行。
2、安装完后,在系统"拖盘"处看见Apache的羽毛图标,如果机子本身已安装IIS,此时图标上为红色的圆点,是因为IIS和Apache在端口80上的重复,修改IIS端口为其它端口.或修
改apache\conf下的httped.conf文件,修改"Listen 80" 中的80为其它.(本配修改了IIS端口,使得Apache的端口为80)
3、解决不自动显示中文:编辑D:\Program Files\Apache2.2\\conf目录下配置文件httpd.conf。用记事本打开它并查找"AddDefaultCharset ISO-8859-1",注释
掉"AddDefaultCharset ISO-8859-1",即在"AddDefaultCharset ISO-8859-1"前加个"#"字符。然后在"#AddDefaultCharset ISO-8859-1"下面添加如下三行:
AddDefaultCharset GB2312
DefaultLanguage GB2312
AddLanguage zh-cn .cn
安装完成之后,你在浏览器中输入http://localhost,将会看到Apache的成功页面.Apache的主目录是d:\Apache\Apache2,此时Apache,已经运行,你可以在窗口的托盘看到他的
图标,双击图标,在弹开的窗口选择"Open Apache Monitor",点Stop,停止Apaceh服务,因为下面要安装Tomcat和JK.
第三步:安装Tomcat(apache-tomcat-6.0.29-windows-x86.zip)
解压Tomcat,把apache-tomcat-6.0.29拷贝到D:\Program Files\目录下,你在浏览器中输入http://localhost:8081,将会看到Tomcat安装成功页面
第四步:整合apache+tomcat安装
把mmod_jk-1.2.31-httpd-2.2.3.so拷贝到D:\Program Files\Apache2.2\modules\下
在D:\Program Files\apache2.2\conf\httpd.conf文件最后加入
#设置Apache与Tomcat之间的连接,让Apache遇到jsp文件时,在后台将其交由Tomcat去处理
#此处mod_jk的文件为你下载的文件
LoadModule jk_module modules/mod_jk-1.2.31-httpd-2.2.3.so
#指定tomcat监听配置文件地址
JkWorkersFile conf/workers.properties
#指定日志存放位置
JkLogFile logs/mod_jk.log
#指定日志级别
JkLogLevel debug
#不可缺少,否则只有一个tomcat能运行
NameVirtualHost *:80
第五步:配置workers.properties
第一个D:\Program Files\apache-tomcat-6.0.29\conf目录下
server.xml修改为<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcatA">
<Host name="localhost" appBase="D:\test"
unpackWARs="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="D:\test" />
<Alias>www.test.com</Alias>
<Alias>test.com</Alias>
</Host>
D:\Program Files\apache2.2\conf下新建workers.properties文件,加入
worker.list=tomcatA,tomcatB
# localhost server 1
# ------------------------
worker.tomcatA.port=8019
worker.tomcatA.host=localhost
worker.tomcatA.type=ajp13
# localhost server 2
# ------------------------
worker.tomcatB.port=8029
worker.tomcatB.host=localhost
worker.tomcatB.type=ajp13
#指定apache通过什么端口提交给哪个tomcat
#设置Apache与Tomcat之间的连接,让Apache遇到jsp文件时,在后台将其交由Tomcat去处理
#此处mod_jk的文件为你下载的文件
LoadModule jk_module modules/mod_jk-1.2.31-httpd-2.2.3.so
#指定tomcat监听配置文件地址
JkWorkersFile conf/workers.properties
#指定日志存放位置
JkLogFile logs/mod_jk.log
#指定日志级别
JkLogLevel debug
#不可缺少,否则只有一个tomcat能运行
NameVirtualHost *:80
#设置虚拟主机
<VirtualHost localhost>
ServerName localhost
#路径中不能存在空格
DocumentRoot D:\test
Serveralias localhost
Serveralias localhost
ErrorLog logs/shsc-error_log.txt
CustomLog logs/shsc-access_log.txt common
<Directory />
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
#让Apache支持对servlet传送,用以Tomcat解析
JkMount /servlet/* tomcatA
#让Apache支持对jsp传送,用以Tomcat解析
JkMount /*.jsp tomcatA
#让Apache支持对.do传送,用以Tomcat解析
JkMount /*.do tomcatA
</VirtualHost>