`

Apache2.2.4 + Tomcat5.0整合手记

    博客分类:
  • CMS
阅读更多
基于反向代理的动态页面缓存技术(参见车东文章),
落实到穷人的解决方案之一就是Apache+tomcat的整合,整合应当达到以下几方面效果:
1.Apache负责静态文件的处理
2.涉及jsp,servlet的动态请求交给tomcat处理
3.通过自定义错误响应404,当Apache找不到静态页面时,应当重定向给tomcat处理
4.在负责处理第3种情况tomcat的servlet或者jsp中,能够获得重定向之前的URL等信息。

看了网上的文章,需要在apache2.2自带ajp或者mod_jk之间做出选择。
先试试ajp吧,大家都说配置简单。
搜了一下,以这篇文章讲得最为清楚。
按照作者指引,很快来到了第4步。在httpd-vhosts.conf中加入一行
    ErrorDocument 404 /rp/test.jsp
其中test.jsp是统一的404错误入口,将来调用模板和数据生成请求的静态页面。
测试代码如下:
<%@ page contentType="text/html;charset=gb2312" import="java.util.*"%>
<%out.println("

Hello World!jsp

");%>
<%
Object redir_url = request.getAttribute("REDIRECT_URL");
out.println(redir_url);
%>

结果404错误重定向到该页面后,确无法获得原始的URL。
在网上搜索,也有难友遇到同样的问题,即ajp没有提供类似mod_jk的JkEnvVar机制,
以将错误重定向的环境变量传递给servlet的request.getAttribute
关于apache的自定义错误处理参见www.kingmx.com/Manual/ApacheMenu/custom-error.html
没奈何只好悻悻作罢。
后来想了想,有一个曲折的解决办法就是,将ErrorDocument重定向到apache下的一个html,再由此html在browser端
利用js调用tomcat的servlet并将原始URL传递进去。
关键代码行如下:

document.location="http://localhost/batcal/test.jsp?ru="+document.URL;
这个办法的缺点是效率较低,与服务端重定向相比较,多了一次http交互.

改用mod_jk好了
根据以下链接http://blog.sina.com.cn/u/4c592ecf010009dz
指引,同样顺利来到第4步。

在httpd.conf中加入一行
JkEnvVar REDIRECT_URL NULL
再次调用test.jsp,结果通过request.getAttribute("REDIRECT_URL");获得了原始URL,搞定。

与采用ajp相比,mod_jk的配置确实麻烦。但总算实现了预期目标。
分享到:
评论

相关推荐

    Apache2.2.4+php5.2.5+mysql5.0+discuz!6+ ZendOptimizer-3.3.0a+phpMyAdmin-2.11.3

    这个是安装说明文件,里面要用的安装文件,除了MYSQL 5。0太大,不能上传,其他的都上传了!!安装文件免费共享了,想快速安装成功的兄弟,请下载这个说明文件,我要收3分哦!我也想去下别人的好东西!...

    apache2.2.4+tomcat6.0整合配置

    Apache 2.2.4 和 Tomcat 6.0 的整合配置是一项常见的任务,尤其在部署Java Web应用程序时。这两个组件分别作为Web服务器和应用服务器,通过特定的方式协同工作,以提供动态内容服务。这里我们将深入探讨这个整合过程...

    tomcat集群-Apache2.2.4+And+mod_jk.so+tomcat配置文件

    总结来说,"tomcat集群-Apache2.2.4+And+mod_jk.so+tomcat配置文件"的配置涉及到多个步骤,包括Apache和Tomcat的安装、mod_jk模块的集成、配置文件的修改以及负载均衡策略的设定。这个过程对于构建高可用、高性能的...

    Apache2.2.4+PHP5.2.3+MySQL5.0.41+testlink 配置说明

    Apache2.2.4+PHP5.2.3+MySQL5.0.41+testlink 配置说明 Apache2.2.4 的安装和配置 Apache2.2.4 是一个流行的Web服务器软件,本文将详细介绍如何安装和配置 Apache2.2.4 。 Apache 的安装 1. 下载 Apache2.2.4 ...

    Apache2.2+Tomcat5.5整合配置教程

    Apache2.2与Tomcat5.5的整合配置是一个常见的任务,特别是在那些希望利用Apache作为前端服务器处理静态内容,而将动态请求转发给Tomcat处理的环境中。这种配置可以提高服务器性能并优化资源分配。 首先,我们需要...

    APACHE 2.2.4与TOMCAT6.0.14整合教程

    ### Apache 2.2.4与Tomcat 6.0.14整合教程:构建负载均衡Web环境 在现代Web开发环境中,为了提高网站的可用性、可扩展性和响应速度,通常会采用负载均衡技术来分散请求到多台服务器上处理。本文将详细解析如何通过...

    CentOS5.3搭建Apache2.2.4+Mysql5.1.4+PHP5.3服务器.pdf

    ### CentOS 5.3 搭建 Apache2.2.4 + Mysql5.1.4 + PHP5.3 服务器的知识点 #### 1. 环境要求和安装前准备 在搭建 LAMP(Linux + Apache + Mysql + PHP)服务器之前,首先需要确保操作系统为 CentOS 5.3,这是一款...

    Apache+Tomcat整合

    Apache 和 Tomcat 整合是将 Apache 作为前端服务器,负责处理静态内容和反向代理,而 Tomcat 作为后端应用服务器,处理 Java 应用的动态请求。这种架构可以充分利用两者的优点,提高系统性能和可扩展性。下面我们将...

    Windows XP + Apache 2.2.4 + PHP 5.2.0 + MySQL 5.0.27 + Zend Optimizer 3.2.0环境配置方法

    #### Apache 2.2.4 的安装与配置 Apache 作为一款开源且功能强大的Web服务器软件,在Windows XP上安装和配置相对简单。以下为详细的安装步骤: 1. **创建安装目录**:首先,在D盘根目录下创建一个文件夹,命名为`...

    Apache2.2.4+php5.2.1+mysql5.2.1+phpbb+cgi+phpmyadmin2.9.2.rar

    这个压缩包文件"Apache2.2.4+php5.2.1+mysql5.2.1+phpbb+cgi+phpmyadmin2.9.2.rar"提供了一整套解决方案,用于搭建一个基于LAMP(Linux、Apache、MySQL、PHP)架构的服务器环境,并添加了对CGI(通用网关接口)的...

    WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0资源包

    本资源包"WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0"提供了这些关键组件的版本,便于开发者快速搭建开发环境。 1. PHP 5.2.4:这是PHP的一个稳定版本,支持多种Web开发功能,包括PHP语言特性、...

    Windows XP + Apache 2.2.4 + PHP 5.2.0 + MySQL 5.0.27 + Zend Optimizer 3.2.0环境配置说明

    Apache 2.2.4是Apache HTTP服务器的一个版本,它是全球最流行的Web服务器软件。安装Apache需要下载二进制文件,然后按照安装向导进行操作,包括选择安装路径、配置端口号(默认80)以及设置服务自动启动等。安装完成...

    apache2.2.4、tomcat6利用JK_mod整合

    Apache HTTP Server 2.2.4与Tomcat 6的整合是将这两种强大的Web服务器技术结合在一起,以实现更高效的应用程序部署和管理。Apache作为前端服务器处理静态内容,而Tomcat作为后端服务器处理Java应用程序。在这个过程...

    APACHE 2.2.4与TOMCAT6.0.2整合教程

    NULL 博文链接:https://yang7527.iteye.com/blog/565972

    WinXP下Apache2.2.4与tomcat6、php5整合

    ### WinXP下Apache2.2.4与tomcat6、php5整合的知识点 #### 一、概述 本文档详细介绍了如何在Windows XP系统中配置Apache2.2.4、tomcat6和php5,使其能够在一个环境中稳定共存并协同工作。这种配置通常用于开发环境...

Global site tag (gtag.js) - Google Analytics