apache 主要做分压工作,把静态的面页在apache上处理,servlet ,jsp页面通过ajp13的协议送给tomcat,让tomcat 来处理。
http://archive.apache.org/dist/
http://archive.apache.org/dist/tomcat/tomcat-5/v5.5.16/
jakarta-tomcat-connectors-jk-1.2.6-src.tar.tar
# tar xzvf jakarta-tomcat-connectors-jk-1.2.6-src.tar.tar
# cd jakarta-tomcat-connectors-jk-1.2.6-src/jk/native
# ./configure --with-apxs=/usr/local/apache2/bin/apxs
# make
# cp ./apache-2.0/mod_jk.so /usr/local/apache2/modules/
workers.properties也会生成在jk/conf 下
把它copy到apache/conf / 跟httpd.conf在同一个目录,
在httpd.conf中加裁mod_jk.so
LoadModule jk_module modules/mod_jk.so
如果workers.properties.也要指名加入。
JkWorkersFile "/project/apache/conf/extra/workers.properties"
我的机子加mod_jk2.so
LoadModule jk_module modules/mod_jk.so
安装apache
sudo ./configure --with-apxs=/project/apache/bin/apxs
$ tar xjvf httpd-2.2.3.tar.bz2
$ cd httpd-2.2.3/
./configure --prefix=/project/apache --enable-rewrite --enable-so
域./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all
$ make
$ sudo make install
jk 运行情况
http://localhost/jkstatus
域名配置
<Directory "/home/splashnote/splashnote/webapp">
Options Indexes FollowSymLinks
AllowOverride All
Allow from all
</Directory>
<VirtualHost *:80>
DocumentRoot /home/splashnote/splashnote/webapp
ServerName dns.websketch.com
ServerAlias *.websketch.com
DirectoryIndex home.html
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^[^.]+/.websketch/.(com)$
RewriteRule ^(.+) %{HTTP_HOST}$1 [C]
RewriteRule ^([^.]+)/.websketch/.(com)(.*)$ /home/splashnote/splashnote/webapp/sylvan$3?$1/%{QUERY_STRING} [L]
</IfModule>
</VirtualHost>
jk 运行情况
http://localhost/jkstatus
apache 运行情况
sudo ./bin/apachectl. -t
sudo ./bin/apachectl start
ubuntu 8.04 安装apache2.2.10 与 tomcat 6.0 的心得
下载地址都在apache下
zlib:
./configure --prefix=/root/dev_ent/zlib
apr:
./configure --prefix=/root/dev_ent/apr
apr-util:
./configure --with-apr=/root/dev_ent/apr/ --with-berkeley-db=/usr/local/bdb
(注:apr-util 不要--prefix=.//.. 自动安装在 ¬/usr/local/apr/bin/apu-1-config
apache:
./configure --prefix=/root/dev_ent/apache --enable-so --enable-dav --with-apr=/root/dev_ent/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config
(enable-so --enable-dav 与mod_jk.so是为了apache 加载so)
svn:
./configure --prefix=/root/dev_ent/subversion --with-berkeley-db=/usr/local/bdb --with-apxs=/root/dev_ent/apache/bin/apxs --with-apr=/root/dev_ent/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-ssl --with-zlib=/root/dev_ent/zlib --enable-maintainer-mode
报数据库bberkeleyDB错误
#tar zxvf db-4.7.25.tar.gz
#cd db-4.7.25/build_unix/
#../dist/configure --prefix=/usr/local/bdb
#make
#make install
(注berkeleyDB会占用8080端口)
workers.properties,mod_jk.conf
workers.properties:的内容
#以下也可以做负载平衡
#worker.list = controller,tomcat1,tomcat2
workers.tomcat_home=/root/dev_ent/apache-tomcat-6.0.14
workers.java_home=/root/dev_ent/jdk1.6.0_05
worker.list = tomcat1
#========tomcat1========
worker.tomcat1.port=8009
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1
#========tomcat2========
#worker.tomcat2.port=9009
#worker.tomcat2.host=localhost
#worker.tomcat2.type=ajp13
#worker.tomcat2.lbfactor = 1
#========controller========
#worker.controller.type=lb
#worker.controller.balanced_workers=tomcat1,tomcat2
#worker.controller.balanced_workers=tomcat1
#worker.controller.sticky_session=1
mod_jk.conf 文件
LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties
JkMount /*.jsp controller
JkMount /*.do controller
JkMount /*.img controller
conf/httpd.conf
Include conf/mod_jk.conf
Include conf/extra/website.conf
website.conf
JkMount /*.jsp tomcat1
<Directory "/root/project/website/webapp">
Options Indexes FollowSymLinks
AllowOverride All
Allow from all
</Directory>
<VirtualHost *:80>
DocumentRoot /root/project/website/webapp
ServerName www.website.com
JkMount /* tomcat1
JkMount /*.jsp tomcat1
DirectoryIndex student.jsp
</VirtualHost>
tomcat conf/server.xml 配置
<Context displayName="Welcome to Tomcat"
docBase="/home/splashnote/splashnote/webapp" path="/splashnote08" reloadable="true" workDir="work/Catalina/localhost/splashnote08">
</Context>
(注:看有没有path="/")
/etc/hosts
ip weburl