谁配置过apache2.0.44+tomcat4.1,传授以下经验

sayo 2003-02-27 12:10:45
在配置时,主要问题在于如何使得apache使用tomcat来解析servlet及jsp这部分
不知道有什么方法?

请赐教
...全文
103 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
sayo 2003-03-10
  • 打赏
  • 举报
回复
辛苦楼上诸位了
sayo 2003-03-10
  • 打赏
  • 举报
回复
虽然所提供的方法都不行,还是辛苦了
wobensuren 2003-02-27
  • 打赏
  • 举报
回复
同意楼上的
数据娃掘 2003-02-27
  • 打赏
  • 举报
回复
Dragonok(浪客剑心) 大哥说的很详细的,我觉得挺好的
freedomcsdn 2003-02-27
  • 打赏
  • 举报
回复
#
# worker.inprocess.ld_path=d:$(ps)SQLLIB$(ps)bin
#

对于这个文件,大家要修改只有两个地方,一个是workers.tomcat_home,这是指定Tomcat工作的目录,另外一个是workers.java_home,这是指定Jdk的目录,大家可以做适当修改。
4、 配置Tomcat,这可是比较重要的一步,成败在此一举。
大家打开Tomcat的核心配置文件E:\Apache Tomcat4.0\conf\server.xml
修改如下:
将<!-- Define an AJP 1.3 Connector on port 8009 -->
<!--
<Connector className="org.apache.ajp.tomcat4.Ajp13Connector"
port="8009" minProcessors="5" maxProcessors="75"
acceptCount="10" debug="0"/>
-->
的<!-- --> 去掉,这句话熟悉XML的人都知道它是注释,因为默认的Tomcat4是没有启用Apj13的8009的端口即mod_jk所使用,修改后如下:
<Connector className="org.apache.ajp.tomcat4.Ajp13Connector"
port="8009" minProcessors="5" maxProcessors="75"
acceptCount="10" debug="0"/>
然后保存,现在你的Tomcat和Apache的配置基本完成了。下面我们开始测试。
四、 测试:
大家首先启动Apache,然后在浏览器里输入http://localhost,如果能看到Apache的欢迎页面,那么恭喜您,第一步成功了。然后回到Tomca目录下运行startup.bat启动Tomcat,再打开浏览器输入:http://localhost:8080/ 如果看到可爱的Tomcat,那么恭喜您,Tomcat也没有问题,最后最重要的是Apache下可以解释jsp和Servlet,把下面的代码copy到文本编辑器中命名为hello.jsp,内容如下:
<%@ page contentType="text/html;charset=gb2312"%>
<html>
<body>
<%String str="Hello World!";%>
<%str=str+"你好";%>
<%=str%>
</body>
</html>
将它保存到E:\Apache\htdocs下,然后在浏览器里输入http://localhost/hello.jsp
如果看到了Hello,那么您的确成功了,完成了通向jsp和servlet的第一步。
freedomcsdn 2003-02-27
  • 打赏
  • 举报
回复
#
#------ DEFAULT ajp12 WORKER DEFINITION ------------------------------
#---------------------------------------------------------------------
#

#
# Defining a worker named ajp12 and of type ajp12
# Note that the name and the type do not have to match.
#
worker.ajp12.port=8007
worker.ajp12.host=localhost
worker.ajp12.type=ajp12
#
# Specifies the load balance factor when used with
# a load balancing worker.
# Note:
# ----> lbfactor must be > 0
# ----> Low lbfactor means less work done by the worker.
worker.ajp12.lbfactor=1

#
#------ DEFAULT ajp13 WORKER DEFINITION ------------------------------
#---------------------------------------------------------------------
#

#
# Defining a worker named ajp13 and of type ajp13
# Note that the name and the type do not have to match.
#
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
#
# Specifies the load balance factor when used with
# a load balancing worker.
# Note:
# ----> lbfactor must be > 0
# ----> Low lbfactor means less work done by the worker.
worker.ajp13.lbfactor=1

#
# Specify the size of the open connection cache.
#worker.ajp13.cachesize

#
#------ DEFAULT LOAD BALANCER WORKER DEFINITION ----------------------
#---------------------------------------------------------------------
#

#
# The loadbalancer (type lb) workers perform wighted round-robin
# load balancing with sticky sessions.
# Note:
# ----> If a worker dies, the load balancer will check its state
# once in a while. Until then all work is redirected to peer
# workers.
worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=ajp12, ajp13


#
#------ DEFAULT JNI WORKER DEFINITION---------------------------------
#---------------------------------------------------------------------
#

#
# Defining a worker named inprocess and of type jni
# Note that the name and the type do not have to match.
#
worker.inprocess.type=jni

#
#------ CLASSPATH DEFINITION -----------------------------------------
#---------------------------------------------------------------------
#

#
# Additional class path components.
#
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)classes

#
# The XML parser provided with Tomcat
#
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)jaxp.jar
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)parser.jar

#
# Tomcat`s implementation
#
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)jasper.jar
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)servlet.jar
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)webserver.jar

#
# Javac as available from Java2SE
#
worker.inprocess.class_path=$(workers.java_home)$(ps)lib$(ps)tools.jar

#
# Setting the command line for tomcat
# Note: The cmd_line string may not contain spaces.
#
worker.inprocess.cmd_line=-config
worker.inprocess.cmd_line=$(workers.tomcat_home)/conf/jni_server.xml
worker.inprocess.cmd_line=-home
worker.inprocess.cmd_line=$(workers.tomcat_home)

#
# The JVM that we are about to use
#
# This is for Java2
#
worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll

#
# And this is for jdk1.1.X
#
#worker.inprocess.jvm_lib=$(workers.java_home)$(ps)bin$(ps)javai.dll
#

#
# Setting the place for the stdout and stderr of tomcat
#
worker.inprocess.stdout=$(workers.tomcat_home)$(ps)inprocess.stdout
worker.inprocess.stderr=$(workers.tomcat_home)$(ps)inprocess.stderr

#
# Setting the tomcat.home Java property
#
worker.inprocess.sysprops=tomcat.home=$(workers.tomcat_home)

#
# Java system properties
#
# worker.inprocess.sysprops=java.compiler=NONE
# worker.inprocess.sysprops=myprop=mypropvalue

#
# Additional path components.
freedomcsdn 2003-02-27
  • 打赏
  • 举报
回复
一、需要的软件:
1、Jdk1.3,这是所有Java程序必须的软件包
2、Apache Web Server 1.3以上,在http://www.52jsp.com可以下载 1.3.22,笔者就用它。
3、Mod_jk,这是Jakarta组织开发的使Apache支持Tomcat的插件,比ApacheJserv更强大,因为ApacheJserv只能用在Apache上,而不能用在别的WebServer 上,Mod_jk可以和很多服务器搭配起来用。大家可以到
http://jakarta.apache.org/builds/jakarta-tomcat/release/v3.3/bin/win32/i386/处下载win32的mod_jk,也可以在http://www.52jsp.com下载。
4、Jakarta Tomcat4.0.1,这是Jakarta组织最新开发的支持Servlet2.3和jsp1.2的服务器。大家可以到http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.0.1/bin/ 处下载。
5、Jdk1.3,这是所有都必须的
二、安装:
1、安装Jdk,我将它安装到e:\jdk1.3下
2、安装Apache,安装它没有什么可说的,一路回车,不要忘了记住它的安装路径,我安装在E:\apache下。
3、安装Mod_jk,只要将下载的mod_jk.dllcopy到安装Apache目录下的libexec下就可以了。
4、安装Tomcat,下载的Win32版本是一个exe文件,没什么可说的,我将它安装在E:\Apache Tomcat 4.0这个目录下。
三、 配置
1、 首先,配置Jdk1.3,在你的环境变量里将JAVA_HOME设为E:\jdk1.3,具体做法为,WinNT/2000: 我的电脑?>属性?>高级?>环境变量,增加一个,值设为E:jdk1.3。如果为Win9X,那么手动修改Autoexec.bat增加Set JAVA_HOME=E:\jdk1.3,重启机器使设置生效。
2、 配置Apache,修改Httpd.conf,增加的内容如下:
LoadModule jk_module libexec/mod_jk.dll
AddModule mod_jk.c
JkWorkersFile "E:\Apache Tomcat 4.0\conf\workers.properties"
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkMount /*.jsp ajp13
JkMount /servlet/* ajp13
对于上面的配置我简单介绍一下,JkWorkersFile使指定mod_jk工作所需要的工作文件,JkMount后面是将所有和jsp和servlet的请求通过Apj13的协议送给Tomcat,让Tomcat来处理。
3、 在E:\Apache Tomcat4.0\conf目录下建一个worker.properties,如果你要是用过Tomcat3.2以上,将它里面的workers.properties拷贝过来也可以,但是要做相应的修改,workers.properties内容如下:

# $Header: /home/cvs/jakarta-tomcat/src/etc/Attic/workers.properties,v 1.3.2.2 2000/10/16 01:59:22 larryi Exp $
# $Revision: 1.3.2.2 $
# $Date: 2000/10/16 01:59:22 $
#
#
# workers.properties -
#
# This file provides jk derived plugins with with the needed information to
# connect to the different tomcat workers.
#
# As a general note, the characters $( and ) are used internally to define
# macros. Do not use them in your own configuration!!!
#
# Whenever you see a set of lines such as:
# x=value
# y=$(x)something
#
# the final value for y will be valuesomething
#
# Normaly all you will need to modify is the first properties, i.e.
# workers.tomcat_home, workers.java_home and ps. Most of the configuration
# is derived from these.
#
# When you are done updating workers.tomcat_home, workers.java_home and ps
# you should have 3 workers configured:
#
# - An ajp12 worker that connects to localhost:8007
# - An ajp13 worker that connects to localhost:8009
# - A jni inprocess worker.
# - A load balancer worker
#
# However by default the plugins will only use the ajp12 worker. To have
# the plugins use other workers you should modify the worker.list property.
#
#

#
# workers.tomcat_home should point to the location where you
# installed tomcat. This is where you have your conf, webapps and lib
# directories.
#
workers.tomcat_home=E:\Apache Tomcat 4.0

#
# workers.java_home should point to your Java installation. Normally
# you should have a bin and lib directories beneath it.
#
workers.java_home=e:\jdk1.3

#
# You should configure your environment slash... ps= on NT and / on UNIX
# and maybe something different elsewhere.
#
ps=\
# ps=/

#
#------ ADVANCED MODE ------------------------------------------------
#---------------------------------------------------------------------
#

#
#------ DEFAULT worket list ------------------------------------------
#---------------------------------------------------------------------
#
#
# The workers that your plugins should create and work with
#
worker.list=ajp12, ajp13

xue_sharp 2003-02-27
  • 打赏
  • 举报
回复
linux下安装并连接没有上面说的那么复杂。
sayo 2003-02-27
  • 打赏
  • 举报
回复
我如下配置:
LoadModule jk_module modules/mod_jk.dll
# Declare the module for <IfModule directive>
AddModule mod_jk.c
# Where to find workers.properties
JkWorkersFile D:\Program Files\Apache Group\Tomcat 4.1\conf\workers.properties
# Where to put jk logs
JkLogFile D:\Program Files\Apache Group\Apache2\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"

# Static files in all Tomcat webapp context directories are served by apache
JkAutoAlias D:\Program Files\Apache Group\Tomcat 4.1\webapps
# All JSP will goes to ajp13
JkMount /*.jsp ajp13
# All servlets goes to ajp13
JkMount /*/servlet/ ajp13

可是无法启动apache,单独只装载dll是可以的,请问为什么?
sayo 2003-02-27
  • 打赏
  • 举报
回复
对不起,我没说清楚,是在win2000下
IT写轮眼 2003-02-27
  • 打赏
  • 举报
回复
以下操作皆以 root 身份完成。
1.下載 JDK1_4_1_01 到一個暫存檔案夾http://java.sun.com/webapps/download/Redirect/14816068/5847479377282807053505607246086069333228071972022813600060132859339008063305596058473206-3865/j2sdk-1_4_1_01-linux-i586-rpm.bin
2.安裝JDK
在j2sdk-1_4_1_01-linux-i586-rpm.bin 檔所在路徑下,鍵入
chmode -R +rwx j2sdk-1_4_1_01-linux-i586-rpm.bin
j2sdk-1_4_1_01-linux-i586-rpm.bin

執行完畢後JDK應該會安裝在 /usr/j2sdk1.4.1_01 路徑下。

3.設置JDK環境變數
打開/etc/profile 檔,在檔的最後加上如下的命令:
export JAVA_HOME=/usr/j2sdk1.4.1_01
export PATH=/usr/j2sdk1.4.1_01/bin :$PATH
export CLASSPATH=.:/usr/j2sdk1.4.1_01/lib/tools.jar:
/usr/j2sdk1.4.1_01/lib/dt.jar:/usr/j2sdk1.4.1_01/lib/htmlconverter.jar
注意:中間不要換行,且CLASSPATH中的"點"不能少。

4.在Reboot機器以後,JDK應可以正常使用了。
執行以下命令看是否運行正常。
java -version

5.安裝apache 2.0.43
下載httpd 2.0.43源代碼到暫存檔案夾
http://www.apache.org/dist/httpd/httpd-2.0.43.tar.gz
在暫存檔案夾路徑下:
tar xzvf httpd-2.0.43.tar.gz

cd httpd-2.0.43

./configure --prefix=/user/local --enable-module=most --enable-mods-shared=most --enable-module=so

make

make install

執行完畢後會在/user/local 路徑下安裝好apache 2.0.43

6.安裝tomcat 4.1.12
下載http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.1.12/bin/jakarta-tomcat-4.1.12.tar.gz
在/user路徑下建立名稱為tomcat的文件夾。
在jakarta-tomcat-4.1.12.tar.gz所在路徑下,
tar xzvf jakarta-tomcat-4.1.12.tar.gz
cd jakarta-tomcat-4.1.12
將jakarta-tomcat-4.1.12路徑下的所有檔拷貝到/user/tomcat目錄下。

7.創建mod_jk
a.下載http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.1.12/src/jakarta-tomcat-connectors-4.1.12-src.tar.gz 至臨時目錄。
tar xzvf jakarta-tomcat-connectors-4.1.12-src.tar.gz

b.下載並安裝libtools from ftp://ftp.gnu.org/gnu/libtool/libtool-1.4.2.tar.gz
tar xzvf libtool-1.4.2.tar.gz
cd libtool-1.4.2
./configure
make
make install

c.下載並安裝 libtools from ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.53.tar.gz
tar xzvf autoconf-2.53.tar.gz
cd autoconf-2.53
./configure
make
make install

d.下載並安裝libtools from ftp://ftp.gnu.org/gnu/automake/automake-1.6.3.tar.gz
tar xzvf automake-1.6.3.tar.gz
cd automake-1.6.3
./configure
make
make install

e.下載ant:
下載http://jakarta.apache.org/builds/jakarta-ant/release/v1.5/bin/jakarta-ant-1.5-bin.zip
到臨時目錄。
tar xzvf jakarta-ant-1.5-bin.zip

cd /usr/local
mkdir jakarta-ant
拷貝jakarta-ant-1.5-bin目錄下的所有檔至 /usr/local/jakarta-ant 路徑下

f.將 $JAVA_HOME/include/linux目錄下的jni_md.h拷貝到$JAVA_HOME/include目錄下

g.打開/etc/profile檔,修改剛才所加入的幾句為:
export JAVA_HOME=/usr/j2sdk1.4.1_01
export PATH=/usr/j2sdk1.4.1_01/bin:/usr/local/jakarta-ant/bin:$PATH
export CLASSPATH=.:/usr/j2sdk1.4.1_01/lib/tools.jar:/usr/j2sdk1.4.1_01/lib/dt.jar:/usr/j2sdk1.4.1_01/lib/htmlconverter.jar
export ANT_HOME=/usr/local/jakarta-ant:/usr/local/jakarta-ant/bin
export CATALINA_HOME=/user/tomcat

然後Reboot機器

h.進入jakarta-tomcat-connectors-4.1.12-src.tar.gz解壓後檔所在的路徑的jk檔夾中
cd jakarta-tomcat-connectors-4.1.12-src/jk/
拷貝jk/build.properties.sample為jk/build.properties,並編輯它:
tomcat40.home=../../jakarta-tomcat-4.1/build
改為
tomcat40.home=/user/tomcat

apache2.home=/opt/apache2
改為
apache2.home=/user/local

i. cd jakarta-tomcat-connectors-4.1.12-src/coyote/
拷貝coyote /build.properties.sample為coyote /build.properties,並編輯它:
catalina.home= ../../jakarta-tomcat/build/tomcat
改為
catalina.home=/user/tomcat

j. cd jakarta-tomcat-connectors-4.1.12-src/util/
ant

k. cd jakarta-tomcat-connectors-4.1.12-src/coyote/
ant

l. cd jakarta-tomcat-connectors-4.1.12-src/jk/
ant
cd jakarta-tomcat-connectors-4.1.12-src/jk/native
./buildconf.sh
./configure --with-apxs=/user/local/bin/apxs --with-java-home=${JAVA_HOME}
make
make install
執行完畢後應該在 /user/local/modules/目錄下存在mod_jk.so文件。
8.配置tomcat
編輯/user/tomcat/conf/server.xml文件

a.
Verify that the following lines are immediately after the <Server port="8005" ...> declaration:
<Listener className="org.apache.ajp.tomcat4.config.ApacheConfig"
modJk="/user/local/modules/mod_jk.so" jkDebug="info"
workersConfig="/user/local/tomcat/conf/jk/workers.properties"
jkLog="/user/tomcat/logs/mod_jk.log"/>

b. Add the following lines after the <Service name="Tomcat-Standalone"> declaration:
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector className="org.apache.ajp.tomcat4.Ajp13Connector"
port="8009" minProcessors="5" maxProcessors="75"
acceptCount="10" debug="0"/>

c.Finally, after any <Host name="localhost"> declarations, add a listener
<Listener className="org.apache.ajp.tomcat4.config.ApacheConfig"
append="true" />

d.在/user/tomcat/conf/目錄下創建一個jk目錄,並在此目錄下創建workers.properties 檔,內容如下:

workers.CATALINA_HOME=/usr/local/jakarta-tomcat-4.0.5
workers.java_home=$(JAVA_HOME)
ps=/

worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1

worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=ajp13
worker.inprocess.type=jni
worker.inprocess.class_path=$(workers.CATALINA_HOME)$(ps)lib$(ps)tomcat.jar
worker.inprocess.cmd_line=start
worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)libjvm.so
worker.inprocess.stdout=$(workers.CATALINA_HOME)$(ps)logs$(ps)inprocess.stdout
worker.inprocess.stderr=$(workers.CATALINA_HOME)$(ps)logs$(ps)inprocess.stderr

重啟動tomcat,應該在tomcat/conf/目錄下生成一個auto目錄,裏面有一個mod_jk.conf文件。

9.配置apache
編輯 /user/www/conf/httpd.conf 檔,在檔末尾增加以下幾行:

<IfModule !mod_jk.c>
LoadModule jk_module /user/local/modules/mod_jk.so
</IfModule>
<IfModule mod_jk.c>
JkWorkersFile "/user/tomcat/conf/jk/workers.properties"
JkLogFile "/user/tomcat/logs/mod_jk.log"

JkLogLevel debug

JkMount /examples ajp13
JkMount /examples/* ajp13

JKMount /*.jsp ajp13

JkMount /jk ajp13
JkMount /jk/* ajp13

JkMount /cocoon ajp13
JkMount /cocoon/* ajp13
</IfModule>

10.測試apache和tomcat是否整合在一起工作。
cd /user/tomcat/bin
sh startup.sh
稍等片刻,等tomcat啟動並生成mod_jk.conf文件
cd /user/local/bin
./httpd -k start

在流覽器輸入:http://localhost/examples
如果能夠列出tomcat的示例文檔目錄,並可用正確執行其中的jsp例子,即說明apache和tomcat配置成功。
AYellow 2003-02-27
  • 打赏
  • 举报
回复
修改Apache的配置文件中可以让Apache将所有*.jsp的请求发给Tomcat
http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/jk/aphowto.html

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧