收录日期:2018/10/23 14:09:04 时间:2016/05/22 09:12:38 标签:Apache
apache2.0.47+tomcat5.0.12整合原贴为:
http://www.csdn.net/develop/article/21/21372.shtm

我是照上面帖的配置一步一步配置的~!

先启动tomcat后启动apache,当运行http://localhost/web/test.jsp与运行http://localhost:8080/web/test.jsp结果相同。

但是当我运行servlet时(url映射到/Test),http://localhost:8080/web/Test时servlet测试成功,http://localhost/web/Test测试404错误,不知道是不是因为apache2.0.47+tomcat5.0.12整合失败???

不知道应该怎么样设置才能在APACHE下运行servlet.
我也想知道,帮你顶。
没有人知道吗?
帮忙啊!
真没人知道?
我也遇到了这种情况,不知道如何去改,哪位大哥知道的,帮我们顶一下啊
没有人知道?
我测试一下,可能需要一点时间,别急
https://jsecom15.sun.com/ECom/EComActionServlet/LegalPage:~:com.sun.sunit.sdlc.content.Leg

alWebPageInfo;jsessionid=jsecom15.sun.com-8ff8%3A3fc60f5a%3A9d6acaa69eb464fa
下载
j2sdk-1_4_1_06-windows-i586.exe

http://www.apache.org/dist/jakarta/


jakarta-tomcat-5.0.14.exe

http://www.apache.org/dist/jakarta/tomcat-connectors/jk/binaries/win32/



-----------------------

终于调试ok,把我的经过写给大家

我也是看 http://www.csdn.net/develop/article/21/21372.shtm  配置的

我下的软件有:


https://jsecom15.sun.com/ECom/EComActionServlet/LegalPage:~:com.sun.sunit.sdlc.content.Leg

alWebPageInfo;jsessionid=jsecom15.sun.com-8ff8%3A3fc60f5a%3A9d6acaa69eb464fa
下载
j2sdk-1_4_1_06-windows-i586.exe


http://www.apache.org/dist/jakarta/tomcat-5/v5.0.14-beta/bin/
下载
jakarta-tomcat-5.0.14.exe


http://www.apache.org/dist/jakarta/tomcat-connectors/jk/binaries/win32/
下载
mod_jk_1.2.5_2.0.47.dll

我的apache版本是2.0.47

------------------

httpd.conf
如果设置了DocumentRoot,用#屏蔽掉

然后就按照那篇文章设置就好了,我把我的httpd.conf最后几行贴出来:

# Using mod_jk2.dll to redirect dynamic calls to Tomcat
LoadModule jk_module modules/mod_jk_1.2.5_2.0.47.dll
JkWorkersFile "C:/Tomcat/conf/workers.properties"
JkLogFile "C:/Tomcat/logs/mod_jk2.log" 
JkLogLevel info
JkMount /servlet/* ajp13
JkMount /*.jsp ajp13

Alias /web "D:/www/" 

<Directory "D:/www"> 
Options Indexes MultiViews 
AddOutputFilter Includes html
AllowOverride None 
Order allow,deny 
Allow from all 
</Directory>

-------------------
Servlet测试:

大家好好读读这篇文章,即使你不会java ,也能成功

http://expert.csdn.net/Expert/topic/2077/2077183.xml?temp=.6935541

我的Servlet就是那个HelloWorld。

编译好HelloWorld.java后,生成一个HelloWorld.class文件

复制到C:\Tomcat\webapps\ROOT\WEB-INF\classes\下


C:\Tomcat\webapps\ROOT\WEB-INF这个目录下面的web.xml里面加上

 <servlet>
       <servlet-name>HelloWorld</servlet-name>
   <servlet-class>HelloWorld</servlet-class>
   </servlet>
   <servlet-mapping>
       <servlet-name>HelloWorld</servlet-name>
   <url-pattern>/servlet/helloworld</url-pattern>
   </servlet-mapping>

重启两个服务器后

在IE中分别输入:

http://localhost:8080/servlet/helloworld



http://localhost/servlet/helloworld

就ok了,大家试试,如果不行,再来问

注意:servlet/helloworld是在web.xml中注册的,与httpd.conf和别的配置文件无关
to ninjakoei (钟钟ninja) 

"运行servlet不成功"是web.xml中没注册好


"先启动tomcat后启动apache,当运行http://localhost/web/test.jsp与运行http://localhost:8080/web/test.jsp结果相同。"

就说明整合成功了
MARK
ustcfrank(阿卡波糖) ,你有没有在NT4.0上测试过,我按照上面的步骤搞一下,好像行不通。
环境:
1 nt4.0 sp6a,
2 jdk:j2sdk1.4.1_06  tomcat5.0.14  apache_2.0.47-win32-x86-no_ssl.exe   mod_jk_1.2.5_2.0.47.dll

3,安装:
http.conf:
LoadModule jk_module modules/mod_jk.dll
JkWorkersFile "d:/Tomcat5/conf/workers.properties"
JkLogFile "d:/Tomcat5/logs/mod_jk2.log" 
JkLogLevel info
JkMount /servlet/* ajp13
JkMount /*.jsp ajp13


Alias /abc "e:/myweb/" 

<Directory "e:/myweb"> 
Options Indexes MultiViews 
AddOutputFilter Includes html
AllowOverride None 
Order allow,deny 
Allow from all 
</Directory>

server.xml:
<Context path="/abc" docBase="D:/myweb" debug="0" reloadable="true" ></Context>

workers.properties:

workers.tomcat_home=d:\Tomcat5  
workers.java_home=D:\Program Files\j2sdk1.4.1_06  
ps=\
worker.list=ajp13  
worker.ajp13.port=8009 
worker.ajp13.host=localhost 
worker.ajp13.type=ajp13  
worker.ajp13.lbfactor=1  

jk2.properties也如上作了改动。


按照上述进行后,打开http://127.0.0.1/abc,OK!

打开 http://127.0.0.1:8080/abc  找不到!!错误!!
打开 http://127.0.0.1:8080/  却OK!这是说明我的那个虚拟路径不起作用?



在打开//127.0.0.1/abc后,里面的HTML可以打开,转到有JSP的文件,就不执行了,提示的是TOMCAT的错误。

请指教!!

呵呵,初步估计是路径不一致。
因为后来那个虚拟路径又OK了,我在地址栏中手动改动后可以出来index.jsp页面了。
那么这个路径设置是怎么回事?
Alias /abc "e:/myweb/" 
这行的语法是什么?  /abc这个可以不要吗?
Alias /abc "e:/myweb/" 这行是httpd.conf里的,它对
http://127.0.0.1/abc 起作用,因为http://127.0.0.1/abc 相当于http://127.0.0.1:80/abc 而apache的默认端口号就是80

tomcat的端口号是8080 


“打开 http://127.0.0.1:8080/abc  找不到!!错误!!”
这个因为"e:/myweb/" 里没有tomcat默认INDEX文件,所以手动输入就ok


Alias /abc "e:/myweb/"  意思是为"e:/myweb/"设置一个别名
mark
ustcfrank(阿卡波糖) ,向你请教:
按照上面的配置,我写了几个JSP的程序,都OK的。
后来执行TOMCAT下面的servlets-examples/ 下面的程序一个都没法执行,
而jsp-examples/ 下面的程序可以执行,何故?
to  wfowler(wfowler) 

我试了一下,都ok的

-----------
1.
把servlets-examples\WEB-INF\classes里的东西copy到

C:\Tomcat\webapps\ROOT\WEB-INF\classes下

2.
把servlets-examples\WEB-INF 里的web.xmlcopy到C:\Tomcat\webapps\ROOT\WEB-INF 下

比如:CookieExample


http://localhost:8080/servlet/CookieExample
http://localhost/servlet/CookieExample

都ok

-------------------------------------------------

另外上面我的回帖有点错误:

就是关于tomcat和php整和问题!

可以看看这个帖子:http://expert.csdn.net/Expert/topic/2509/2509343.xml?temp=.2688562


下面摘一段我的恢复:

原因如下:

是apache加载的模块不对
----------
1.
你从

http://www.apache.org/dist/jakarta/tomcat-connectors/jk2/binaries/win32/

下载

jakarta-tomcat-connectors-jk2.0.2-win32-apache2.0.43.zip

解压缩后,把mod_jk2-2.0.43.dll复制到C:\Apache2\modules子目录下

2.httpd.conf

屏蔽相应代码

# Using mod_jk2.dll to redirect dynamic calls to Tomcat
#LoadModule jk_module modules/mod_jk_1.2.5_2.0.47.dll
#JkWorkersFile "C:/Tomcat/conf/workers.properties"
#JkLogFile "C:/Tomcat/logs/mod_jk2.log" 
#JkLogLevel info
#JkMount /servlet/* ajp13
#JkMount /*.jsp ajp13


再加入一行代码

LoadModule jk2_module  modules/mod_jk2-2.0.43.dll    

3.

在C:\Apache2\conf目录下新建一个文件,一定命名为workers2.properties。  workers2.properties内容如下:  
 
[shm]    
 
file=${serverRoot}/logs/shm.file    
 
size=1048576    
 
   
 
#  Example  socket  channel,  override  port  and  host.    
 
[channel.socket:localhost:8009]    
 
port=8009    
 
host=127.0.0.1  
 
   
 
#  define  the  worker    
 
[ajp13:localhost:8009]    
 
channel=channel.socket:localhost:8009    
 
   
 
#  Uri  mapping    
 
[uri:/*]    
 
worker=ajp13:localhost:8009  


4.(这步你可能做过了)
把documentroot改为
tomcat5.0/webapps/root

5.重启apache,再重启tomcat

在IE中

http://localhost:80/index.jsp

里面的功能就该都能用了

----------------

我看的相关帖子:

http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=152944


注意
apache2用mod_jk2.dll 
apache1 用mod_jk.dll
问题解决
原文
http://www.csdn.net/develop/article/21/21372.shtm

中的
httpd.conf
改为
# Using mod_jk2.dll to redirect dynamic calls to Tomcat
LoadModule jk_module modules/mod_jk2.dll
JkWorkersFile "e:/Tomcat/conf/workers.properties"
JkLogFile "e:/Tomcat/logs/mod_jk2.log" 
JkLogLevel info
JkMount /* ajp13
JkMount /*.jsp ajp13
Alias /web "d:/www" 

即把
JkMount /servlet/* ajp13
改为JkMount /* ajp13
就可以支持servlet了

jbeg(龙):按你说的做了,还是不成功。
用jk2整合吧,简单又好!不要老在纠缠jk了!

怎样将在包中的applet放到html中 100分求解 从sql数据库中返回值得问题 adsl上网,怎样配置计算机? 好久没有上来了 在Internet上用多播,多播地址是怎么确定的? 急!关于rpc服务的问题!大家帮个忙咯! adocommand 倒分犯法么? 请教AspNetPager的问题 VB中如何创建dll?来个链接或来点资料行吗? 请问抽象类和接口的区别 在C++Builder中如何获取数组元素的个数 我的人生目标在什么地方呀。 apache的localhost的目录在什么地方啊?在线求解! *(*(scor+i)+j)的意义为什么和scor[i][j]一样呀????? 为什么出现这样的错误:关于简单邮件发送的例子 请问各位大哥谁有apriori的delphi源码 高手请进,XML分析!!,急切 请教大侠,怎么把工程的编译状态由release 改为 debug状态??? 请教:如何调用Windows中的曲线字库。 为什么datagrid不能显示数据--连接oracle--急急急!!! 一个会员后台管理系统的安全性(只剩最后10分,兄弟们帮我顶起) tomcat4.1如何配置jdbc数据源! 快抵达那第二座山的山顶了! 散分+100分的幸运分 离开大连两年了,很想家,希望通过朋友们了解一下大连的情况 【大家帮帮忙,今年下半年考高程,有些问题请教? 】 C#中的断言(Assert)的作用到底是什么,只是用来检测条件的吗? 怎样使ListBox的Item折行显示文本 急问ejb问题 [急,在线等]添加新纪录总带有上个记录的数据