Tomcat 4.0+apache 1.3完美整合(jdon网友)

转载 2004年10月09日 13:25:00

Tomcat 4.0+apache 1.3完美整合

板桥里人 jdon.com 2001/10

1.Tomcat缺省的jsp文件必须放置在examples目录下,难道jsp文件只能放在examples下吗?
2. 访问jsp只能用xxxx.com:8080访问吗?

本文讨论如何结合Tomcat和Apache及其他脚本程序如PHP混合使用情况,如果一台服务器只运行jsp,那解决办法很简单:只要将server.xml中8080端口改成80就可以,或将apache中的httpd.conf的80改成8080也可以.可以参考: Using Apache Tomcat 4

Tomcat 3.23中很好做,相关文章介绍不少,Tomcat 4.0就不一样了,本人经过试验,摸索出解决这两个问题的简单方式,这种方式可以和apache结合在一起,假设域名主机是sign.jdon.com 可以实现http://sign.jdon.com/访问所有JSP文件,这一结果是很多朋友希望达到的,我下面介绍一下.

分两步: 配置server.xml 和 配置httpd.conf:

配置server.xml
首先介绍一下tomcat conf下的server.xml 我们的动作主要是在这里面操作:
server.xml有两部分组成:
1. service=Tomcat-Standalone 这是Tomcat标准启动服务,使用端口8080访问
2. service=Tomcat-Apache 这是和apache整合部分,使用80008端口访问 ,同时需要在httpd.conf中加载mod_webapp.so

在上面两个service段中加入(在哪个service加入取决于你需要是以sign.jdon.com:8080 还是以sign.jdon.com/访问):
我们是想以后者访问,就在service=Tomcat-Apache中加入:

<Host name="虚拟主机域名" debug="0" appBase="应用基本目录" unpackWARs="true">
<Context path="容器URL路径" docBase="容器目录" debug="0" reloadable="true">
<Logger className="org.apache.catalina.logger.FileLogger"
prefix="自己的log文件名." suffix=".txt"
timestamp="true"/>
</Context> </Host>



1. reloadable="true"确保你每次上传bean或servlet到WEB-INF/classes时,系统自动装载最新的.

2. docBase="" 是你自己jsp目录的实际位置 ,如果是winNT, 可以是c:/jserv

3. Logger 是用来将/jserv的启动状态单独输出一个log文件中 这里是localhost_jserv_log,这个文件在Tomcat 的logs目录下。可以用来监视你的/jserv启动了没有。

4.欠缺servlet或bean是放置在自己目录下的WEB-INF/classes中,建议你将eamples目录下的WEB-INF原封不动的拷贝过来,省事。你要修改这个,就修改web.xml 这些 上面推荐的英文文章中有介绍.

我的server.xml是这样:

<Service name="Tomcat-Apache">

<Connector className="org.apache.catalina.connector.warp.WarpConnector"
port="8008" minProcessors="5" maxProcessors="75"
enableLookups="true"
acceptCount="10" debug="0"/>

<!-- Replace "localhost" with what your Apache "ServerName" is set to -->
<Engine className="org.apache.catalina.connector.warp.WarpEngine"
name="Apache" debug="0" appBase="webapps">

<!-- Global logger unless overridden at lower levels -->
<Logger className="org.apache.catalina.logger.FileLogger" prefix="apache_log." suffix=".txt" timestamp="true"/>

<!-- Because this Realm is here, an instance will be shared globally -->
<Realm className="org.apache.catalina.realm.MemoryRealm" />

<!--下面是我加入的-->
<Host name="sign.jdon.com" debug="0" appBase="/home/bqlr" unpackWARs="true">
<Context path="/" docBase="/home/bqlr/sign" debug="0" reloadable="true">
<Logger className="org.apache.catalina.logger.FileLogger"
prefix="jdon.com_log." suffix=".txt"
timestamp="true"/>
</Context>
</Host>

</Engine>

</Service>

 

配置httpd.conf

设定sign.jdon.com 对应我的目录/home/bqlr/sign/ sign.jdon.com是虚拟主机名,我的部署方法可以为特定虚拟主机域名提供JSP功能:
在自己的apache 的conf下的httpd.conf加入:

LoadModule webapp_module libexec/mod_webapp.so
AddModule mod_webapp.c
WebAppConnection conn warp sign.jdon.com:8008

<VirtualHost 61.119.57.108>
ServerAdmin webmaster@jdon.com
DocumentRoot /home/bqlr/sign
ServerName sign.jdon.com
# WebAppDeploy examples conn /examples/
WebAppDeploy sign conn /
</VirtualHost>

 

1.本方法是适合apache 1.3版本的 适合glibc2.1 我在RedHat 7.2 7.1 7.0 6.2 6.1都测试通过

2.如果你的linux安装的是glibc2.1 就要自己下载mod_webapp.src自己编译,编译前,要先安装其目录下的APR.
这里是我编译好正在使用的 mod_webapp.so ,可以下载直接copy到apache的libexec目录下

3.使用httpd configtest 测试httpd.conf可否启动,如果出现无效LoadModule提示 是因为你的apache没有使用module=so编译,重新编译apache 网络上其他有介绍.

4.在/home/bqlr/sign下安装WEB-INF/classes目录 最简单的办法是copy -R tomcat/wepapps/examples/WEB-INF 到/home/bqlr/sign下,以后自己编译的bean或servlet放在这个目录下 以后我有空 我公布我的jsp/bean的编程举例.

最后 重新启动Tomcat 和 apache 你可以使用sign.jdon.com访问所有的Jsp 和servlet了.

Tomcat 4.0+apache 1.3完美整合(jdon网友)

Tomcat 4.0+apache 1.3完美整合板桥里人 jdon.com 2001/101.Tomcat缺省的jsp文件必须放置在examples目录下,难道jsp文件只能放在examples下吗...
  • echoguo
  • echoguo
  • 2004年09月23日 14:22
  • 526

Tomcat 4.0+apache 1.3完美整合

Tomcat 4.0+apache 1.3完美整合1.Tomcat缺省的jsp文件必须放置在examples目录下,难道jsp文件只能放在examples下吗? 2....
  • rcyl2003
  • rcyl2003
  • 2007年04月23日 14:15
  • 520

tomcat 的http和ajp协议

AJP13是定向包协议。因为性能原因,使用二进制格式来传输可读性文本。WEB服务器通过 TCP连接和SERVLET容器连接。为了减少进程生成 socket的花费,WEB服务器和SERVLET容器之间尝...
  • titan_max
  • titan_max
  • 2016年09月07日 18:29
  • 572

[转]Tomcat: Connector中HTTP与AJP区别

Tomcat: HTTP与AJP区别Tomcat服务器通过Connector连接器组件与客户程序建立连接,Connector组件负责接收客户的请求,以及把Tomcat服务器的响应结果发送给客户。默认情...
  • zvane
  • zvane
  • 2008年04月02日 21:58
  • 5473

java与redis的整合

1、jar包    jedis-2.7.2.jar 2、 import java.util.Map; /**  * redis操作接口;  *   *  ...
  • u012129031
  • u012129031
  • 2016年10月27日 15:26
  • 286

apache2.4 tomcat8整合

大纲: 1、安装apache2.4.x: apache2.4版本需要手动安装apr、apr-util以及prce,可以参考如下网址。 #apache 配置参考使用命令(可在后面加鉴权...
  • TTTTAAAAGGGG
  • TTTTAAAAGGGG
  • 2017年04月13日 11:02
  • 2579

解决Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 and 6 Web modules项目无法加入到tomcat

解决Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 and 6 Web modules 无法加入到tomcat中问...
  • bpqdwo
  • bpqdwo
  • 2017年06月10日 16:07
  • 1359

nginx 和 Tomcat 整合

1安装好jdk 2安装好tomcat 配置好两个tomcat  端口号改成不同的不让冲突  3 安装好  nginx 4只需要 配置的是 nginx  的 nginx.cof  文件 给里面文...
  • yt1037921169
  • yt1037921169
  • 2016年09月22日 17:28
  • 546

Eclipse报错:Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 and 6 Web modules

部署了tomcat服务器在Eclipse上面,遇到这个烦人的错误, 按照如下的措施就可以解决这个问题了: 将文件org.eclipse.wst.common.project.facet.core....
  • tom_code
  • tom_code
  • 2017年07月10日 20:08
  • 595

springboot与mybatis整合实例详解(完美融合)

springboot大家都知道了,搭建一个spring框架只需要秒秒钟。下面给大家介绍一下springboot与mybatis的完美融合:        首先:创建一个名为springboot-...
  • DJJT10
  • DJJT10
  • 2017年01月09日 10:55
  • 213
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Tomcat 4.0+apache 1.3完美整合(jdon网友)
举报原因:
原因补充:

(最多只允许输入30个字)