`
sorphi
  • 浏览: 46552 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

老版本apache模拟2.2.5中出现的ProxyPassMatch

阅读更多

反向代理是webserver和appserver结合的通用解决方案。apache提供了mod_proxy,mod_proxy_ajp来干这个事情。另外还有应用服务器方提供的mod比如mod_jk,mod_wl等。

使用mod_jk的同学估计对ajp又爱又恨吧?因为ajp不支持regex方式来代理动态请求。其实关于各种反向代理模块,配置的灵活性、性能,都是需要权衡的。不使用mod_jk的同学又希望有一款模块能够灵活的配置,现在apache2.2.5给mod_proxy新增了一个ProxyPassMatch指令,可以试试。

 

这篇文章主要是给那些暂时不能使用apache2.2.5的同学看的。估计很多人应该知道mod_rewrite中的RewriteRule指令中[P]标识,是用来加强ProxyPass的。但是rewrite拍脑袋想一下应该是对webserver有性能上的消耗的。这里我试图给出一个目前我能想到的最灵活也兼顾性能的配置方案:

 

 

#global disable rewrite
RewriteEngine off

<LocationMatch "^/context/(.*)\.(jsp|action|do)$">
        #per-dir enable rewrite
        Options +FollowSymLinks
        RewriteEngine on
        RewriteRule ^/YourWebserverDocumentRoot/(.*) http://appserver:port/$1 [P,QSA,L]
</LocationMatch>
 

 

 

只是,apache文档中说:

Although rewrite rules are syntactically permitted in <Location> sections, this should never be necessary and is unsupported.

 

有谁能够给我解惑?我现在只能假设,对于每一个请求,LocationMatch匹配是快于RewriteRule匹配的。但能想象,上面这个配置,若匹配到URI,至少有两次匹配过程。有时间做一个测试来验证。

 

我其实并不推崇这种rewrite的技巧,同时也对java web应用的特定扩展名感到厌烦了。如果能够更合理的组织URI,ajp肯定是更合理的方案。

分享到:
评论

相关推荐

    Keras-2.2.5.tar.gz

    在本资源中,我们讨论的是 Keras 的版本 2.2.5,这是一个非常稳定且广泛使用的版本。 Keras 的主要特点包括: 1. **用户友好**:Keras 提供了一种直观且易于理解的接口,使得构建复杂的深度学习模型变得简单。它...

    layui-v2.2.5 中文离线文档.zip

    layui-v2.2.5是layui的一个版本,这个版本的中文离线文档包含了所有关于layui 2.2.5版的详细说明和示例,方便开发者在没有网络的情况下查阅和学习。 layui的核心特性包括: 1. **模块化**:layui遵循AMD...

    vagrant_2.2.5的64位版本

    总之,Vagrant 2.2.5 是一个强大且灵活的工具,通过它,开发者可以轻松创建和管理虚拟开发环境,提高工作效率,减少环境中出现的不一致性和问题。下载并使用这个64位版本的Vagrant,将使你的开发流程更加顺畅。

    Vagrant2.2.5版本64位

    Vagrant2.2.5是该软件的一个具体版本,适用于64位操作系统。这个版本提供了对不同操作系统和虚拟化技术(如VirtualBox、VMware等)的支持,使得开发人员可以方便地配置和共享一致的开发环境。 在描述中提到“官网...

    AForge.dll 2.2.5版本

    在2.2.5这个版本中,可能包含了性能优化、新功能的添加或已有功能的改进,以满足不断发展的计算机视觉需求。例如,可能会对拍照功能进行了增强,使得在捕获和处理图像时更加高效和准确。 在使用AForge.dll 2.2.5...

    vagrant_2.2.5_x86_64.rar

    这个“vagrant_2.2.5_x86_64.rar”文件是Vagrant的一个特定版本,即2.2.5,适用于64位(x86_64)的系统。Vagrant通过自动化虚拟化技术,如VirtualBox、VMware或AWS,让开发者能够快速地创建一致且可重复使用的开发...

    layui-v2.2.5 中文离线文档

    LayUI-v2.2.5是该框架的一个稳定版本,包含了丰富的功能和组件,适用于各种类型的Web应用开发。在这个版本中,我们可以找到全面的中文离线文档,帮助开发者在没有网络的情况下也能轻松查阅和学习。 LayUI的基础部分...

    gxt-2.2.5.zip

    GXT 2.2.5是该系列的一个重要版本,发布于2011年9月15日,相较于之前的2.1.1版本,它带来了诸多改进和新特性。 1. **组件丰富性**: GXT 2.2.5包含了大量的UI组件,如数据网格、表格、树形视图、图表、表单元素等...

    android_2.2.5.rar

    《Android 2.2.5:历史版本的深入解析与技术要点》 在移动操作系统的世界里,Android以其开源、灵活的特性赢得了全球开发者和用户的喜爱。Android 2.2.5,作为一个重要的历史版本,虽然已被后来的更新迭代所超越,...

    echarts-2.2.5.zip

    在ECharts 2.2.5版本中,可能包含以下关键改进和特性: 1. 更完善的API和事件系统:为开发者提供了更多控制图表行为的接口,以及丰富的图表交互事件,便于实现复杂的功能和定制化需求。 2. 性能优化:此版本可能对...

    vagrant_2.2.5_x86_64.zip

    在本案例中,我们讨论的是Vagrant 2.2.5的x86_64(64位)版本,专为Windows操作系统设计。 Vagrant 使用VirtualBox、VMware或其它虚拟化平台作为后端,但它通过一个简单的命令行界面抽象了这些复杂性。开发者只需要...

    AForge2.2.5版本中英文资料及其各种示例源码

    包含了中英文文档 dll库文件 示例源码 core fuzzy genetic image machinelearning math neuro video vision AForge.Imaging —— 日常的图像处理和过滤器 AForge.Vision —— 计算机视觉应用类库 AForge.Neuro ——...

    layui2.2.5离线文档下载.zip

    layui2.2.5是该框架的一个稳定版本,提供了丰富的组件和API,帮助开发者快速构建用户界面。离线文档下载是为了方便开发者在没有网络连接的情况下也能查阅和学习layui的相关知识。 在layui2.2.5的离线文档中,你可以...

    BadboyInstaller-2.2.5.rar

    BadboyInstaller-2.2.5.rar 是一个压缩包文件,包含了Badboy工具的安装程序,版本号为2.2.5。Badboy是一款在软件测试领域,特别是性能测试和负载测试中常用的辅助工具,它专为JMeter设计,帮助用户进行脚本的录制与...

    glibc-2.2.5.tar.gz

    glibc-2.2.5是glibc的一个具体版本,发布于2002年,尽管现在已经有了更新的版本,但2.2.5版在许多遗留系统和嵌入式设备中仍然广泛使用。 glibc的核心功能可以分为以下几个方面: 1. **基本库函数**:glibc提供了...

    最新版本Jemter和Badboy2.2.5

    【标题】"最新版本Jemter和Badboy2.2.5"中涉及的主要知识点是两个知名的性能测试工具,即Apache JMeter和Badboy。这两个工具在IT领域,特别是软件测试和性能优化方面,有着广泛的应用。 Apache JMeter是Apache软件...

    layui-v2.2.5中文离线文档.rar

    layui-v2.2.5是layui的一个版本,这个版本的中文离线文档可以帮助开发者在没有网络的情况下查阅和学习layui的相关知识。 layui的核心特性包括: 1. **模块化**:layui采用模块化的开发方式,每个功能模块都有独立...

    Badboy2.2.5bak.rar

    由于官方网站已经不再维护此版本,这个名为"Badboy2.2.5bak.rar"的压缩包可能是用户为了保留这一经典工具而创建的备份。 Badboy的主要功能包括: 1. **记录与回放**:Badboy能够记录用户在浏览器中的所有HTTP交互...

    LayUI-v2.2.5 中文离线文档

    LayUI-v2.2.5 中文离线文档

    Windows下Apache2.2.8及Php5.2.5的安装与配置方法

    - 将Apache的bin目录添加到系统的PATH环境变量中,以便在命令行中可以全局调用Apache相关的命令。 3. **修改httpd.conf配置文件**: - 打开httpd.conf文件,找到“DocumentRoot”和“”部分,将文档根目录设置为...

Global site tag (gtag.js) - Google Analytics