- 浏览: 2538470 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (676)
- linux运维 (157)
- php (65)
- mysql (78)
- nginx (27)
- apche (18)
- framework (6)
- windows (9)
- IDE工具 (23)
- struts2 (7)
- java (13)
- 移动互联网 (14)
- memcache redis (23)
- shell基础/命令/语法 (37)
- shell (50)
- puppet (4)
- C (11)
- python (9)
- 产品经理 (27)
- Sphinx (4)
- svn (12)
- 设计构建 (12)
- 项目管理 (44)
- SEO (1)
- 网站架构 (26)
- 审时度势 (42)
- 网络 (14)
- 激发事业[书&视频] (81)
- 其它 (12)
- 摄影 (8)
- android (21)
最新评论
-
zhongmin2012:
原文的书在哪里
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
renzhengzhi:
你好,请问个问题,从master同步数据到slave的时候,s ...
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
ibc789:
你好,看了你的文章,我想请教个问题, 我在用 redis的时候 ...
redis 的两种持久化方式及原理 -
iijjll:
写得非常好
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
iijjll:
写得非常好
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器
Apache模块 mod_proxy手册:http://lamp.linux.gov.cn/Apache/ApacheMenu/mod/mod_proxy.html
首先在apache(Unix平台最流行的WEB服务器平台)上启用mod_proxy模块,需要注意的是,如果在apache(Unix平台最流行的WEB服务器平台)-2.2上,则还需要加载名为mod_proxy_http的模块。因为2.2系列把代理功能都拆分成N个小模块了。
#a2enmod proxy
#a2enmod proxy_http
#a2enmod proxy_balancer
apache(Unix平台最流行的WEB服务器平台)提供了mod_proxy模块用于提供代理服务,能够支持的包括正向代理、反向代理、透明代理、缓存、负载均衡,HTTP代理、FTP代理、SSL代理等若干强大的功能。
在您没有对服务器采取安全措施之前,请不要用ProxyRequests启用代理。
Apache可以被配置为正向(forward) 和反向(reverse) 代理。
正向代理 是一个位于客户端和原始服务器(origin server) 之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。
正向代理的典型用途是为在防火墙内的局域网客户端提供访问Internet的途径。正向代理还可以使用缓冲特性(由mod_cache
提供)减少网络使用率。
使用ProxyRequests
指令即可激活正向代理
。因为正向代理允许客户端通过它访问任意网站并且隐藏客户端自身,因此你必须采取安全措施
以确保仅为经过授权的客户端提供服务。
反向代理 正 好相反,对于客户端而言它就像是原始服务器,并且客户端不需要进行任何特别的设置。客户端向反向代理的命名空间(name-space)中的内容发送普通 请求,接着反向代理将判断向何处(原始服务器)转交请求,并将获得的内容返回给客户端,就像这些内容原本就是它自己的一样。
反 向代理的典型用途是将防火墙后面的服务器提供给Internet用户访问。反向代理还可以为后端的多台服务器提供负载平衡,或为后端较慢的服务器提供缓冲 服务。 另外,还可以启用高级URL策略和管理技术,从而使处于不同web服务器系统的web页面同时存在于同一个URL空间下。
可以使用ProxyPass
指令激活反向代理(在RewriteRule
指令中使用[P]
标记也可以)。配置反向代理并不需要
打开ProxyRequests
指令。
------------------------反向代理
反向代理可以基于一整个站点,也可以基于一个目录。首先在全局配置文件下,加入如下几行,打开反向代理。 proxy.conf
ProxyRequests Off //
使用ProxyRequests
指令即可激活正向代理
<Proxy your_apache(Unix平台最流行的WEB服务器平台)_server_ip:80>
Order deny,allow
Allow from all
</Proxy>
然后新建一个网站,即创建一个标准的<virtualhost>配置段。这里我们将站点/test目录设置为google的反向代理。加入下边内容:
ProxyPass /images/ !
ProxyPass /js/ !
ProxyPass /css/ !
ProxyPass / http://192.168.1.101/
ProxyPass /test1 http://192.168.1.102/
ProxyPass /test http://www.google.com/
ProxyPassReverse /test http://www.google.com/
ProxyPass易理解,就是转发url上的请求. 其中的配置顺序也是需要遵守 。要禁止转发的url需要放在一般的请求之前。对于http://***/images/ http://***/js/ http://***/css/的请求是不予转发的,对于http://***/test1/的请求,会转发到 http://192.168.1.102/ 。ProxyPassReverse就是反向代理
然后保存配置文件重新启动apache
通过反向代理,我们可以将web服务器放置在防火墙后,在web服务器前端使用mod_proxy配置反向代理,并打开apache(Unix平台最流行的WEB服务器平台)的mod_cache缓存模块,更可以极大的提高对静态内容的访问性能。
--------------理解反向代理:
<IfModule mod_proxy.c>
ProxyRequests Off
<Proxy localhost:80>
#AddDefaultCharset off
Order deny,allow
Deny from all
#Allow from .example.com
</Proxy>
ProxyPass /it http://192.168.1.117/2222
</IfModule>
访问http://192.168.1.102/it/a==>直接跳转http://192.168.1.117/2222/a/
<IfModule mod_proxy.c>
ProxyRequests Off
<Proxy localhost:80>
# AddDefaultCharset off
Order deny,allow
Deny from all
#Allow from .example.com
</Proxy>
ProxyPass /it http://192.168.1.117/2222
ProxyPassReverse /it http://192.168.1.117/2222
</IfModule>
访问http://192.168.1.102/it/a==>http://192.168.1.102/it/a/
------------------------负载均衡
apache自带mod_proxy功能模块中目前可以实现两种不同的负载均衡集群实现方式,第一种是分工合作的的形式,通过各台主机负责不同的任务而实现任务分工。第二种是不同的机器在担任同样的任务,某台机器出现故障主机可以自动检测到将不会影响到客户端 ,而第一种却不能实现,但第一种实现方式的优点在于他是主服务器负担相应没第二种大,因为他只是提供跳转指路功能,形象的说他不给你带路只是告诉你有条路可以到,但到了那是否可以看到你见的人他已经不会去管你了 :)。相比之下第二种性能要比第一种会好很多 ;但他们都有个共同点都是一托N形式 来完成任务的所以你的主机性能一定要好o
下面以在apachemod_proxy下做的反向代理负载均衡为配置实例:
首先要确定域名www.test.com
在DNS上的记录对应apache服务器接口上具有internet合法注册的IP地址,这样才能使internet上对www.test.com
的所有连接请求发送给本台apache服务器。
在本台服务器的apache配置文件httpd.conf中添加如下设置:
proxypass /news
http://192.168.1.117
proxypass /it
http://192.168.1.103
注意,此项设置最好添加在httpd.conf文件“Section 2”以后的位置,服务器192.168.1.1-3也应是具有相应功能的www服务器,在重启服务时,最好用apachectl configtest命令检查一下配置是否有误
。
接下来也是我真正想要介绍的2.2版本后在mod_proxy中新添加的mod_proxy_balancer模块给我们带来的新功能。
首先将在主配置文件http.conf以下Module的注释去掉
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_http_module modules/mod_proxy_http.so
再并增加以下元素
ProxyRequests Off
ProxyPass /test balancer://xuanfei stickysession=jsessionid nofailover=On
<proxy balancer://xuanfei/>
BalancerMemberhttp://192.168.1.117 loadfactor=1
BalancerMemberhttp://192.168.1.103 loadfactor=1
</proxy>
ProxyPass为代理转发的Url,即将所有访问/test的请求转发到群集balancer://xuanfei
loadfactor为各主机间的负载比例参数,可是设置不同指数
BalancerMember为群集的成员,即群集服务器A或B,负载均衡服务器会根据均衡规则来将请求转发给BalancerMember。
---------如何查看apache 集群的运行状态
先加载info模块:
#a2enmod info
<IfModule mod_status.c>
<Location /s-server-status>
SetHandler server-status
Order deny,allow
# Deny from all
Allow from 192.168.1.117
# ip6-localhost
# Allow from .example.com
</Location>
<Location /server-info>
SetHandler server-info
Order Deny,Allow
#Deny from all
Allow from 192.168.1.117
</Location>
<Location /balancer-manager>
SetHandler balancer-manager
Order Deny,Allow
#Deny from all
Allow from 192.168.1.117
</Location>
ExtendedStatus On
</IfModule>
配置完成后重启APACHE可以通过
http://ip/server-staus
http://ip/server-info 需要加载info.so
http://ip/balancer-manager
这些URL查看apache 集群的运行状态
发表评论
-
伪静态
2011-11-29 17:34 1432--------------------Apache ... -
关于Apache (httpd)服务器防DDOS模块mod_evasive的使用说明
2011-03-21 22:34 4085http://www.docin.com/p-83334545 ... -
[shell]Nginx/Apache日志分析脚本
2011-03-21 12:47 8484http://junlee.blog.51cto.com/22 ... -
Apache查看连接数和限制当前的连接数
2010-11-04 10:58 9401起因:线上的一台服务器,最近总是出现 访问 很慢的情况发生,点 ... -
http.conf优化,安全配置
2010-10-31 17:19 2815---------------------- apache日 ... -
【汇总】apache
2010-10-31 17:17 1232----------------apache SetEnv ... -
如何让apache支持.shtml 让apache支持include标签
2009-10-11 15:23 3663打开conf目录下的httpd.conf文件,搜索“AddTy ... -
[CentOS]apache+mod_ssl中证书生成方法
2009-10-07 10:58 3869--------------------------- ... -
启用Apache2 的mod_deflate(gzip)來压缩网页提高传输效能
2009-08-22 21:25 2667Apache2之后的版本,模块名不叫gzip,而叫mod_de ... -
apache的缓存mod_cache设置----待更新
2009-08-16 14:38 3834Apache模块 mod_cache 手册:http://la ... -
apache的prefork和workder模式
2009-08-16 14:12 6997如何知道当前apache的应用模式 ht ... -
ubuntu apache2配置详解
2009-08-16 12:48 5964ubuntu apache2配置 1.apache2.con ... -
查看Apache的请求数和开启Apache Server Status
2009-08-16 11:58 6063在Linux下查看Apache的负 ... -
【维护】apache 配置和日志+shell
2009-08-13 09:49 1702apache安装目录 在phpinfo ... -
【汇总】Apache压测命令ab
2009-06-30 21:14 4023ab的全称是ApacheBench,是Apache附带的一 ... -
虚拟主机配置教程,包括apache mod_vhost_alias模块
2009-06-29 22:52 5329----------- /htdocs/test ... -
伪静态页面生成教程mod_rewrite
2009-06-23 09:48 2992从phpchina.com转载过来的,教程写的不错,容易理解 ...
相关推荐
该软件包是apache的httpd中mod_proxy.so、mod_proxy_http.so代理模块,分别对应包含linux、windows的版本。
这将把mod_rpaf模块编译并安装到Apache的模块目录中。 **配置mod_rpaf** 在Apache的配置文件(通常是`httpd.conf`或`virtualhost`配置段)中,添加以下行来启用mod_rpaf: ```apacheconf LoadModule rpaf_module ...
Apache 2.4 中文文档 - Apache 模块 mod_proxy_balancer | Docs4dev.mht
在Java企业级应用中,Apache常作为前端服务器,通过`mod_jk`模块与后端的Tomcat进行通信,实现动态内容的处理。这里我们详细讨论`mod_jk.so`以及在64位Linux环境中的配置和使用。 `mod_jk.so`是Apache的负载均衡器...
本文档详细介绍了使用mod_proxy模块与Apache和Tomcat结合来实现负载均衡与集群配置的过程。配置前需要准备相应的环境,包括安装JDK、Apache HTTP Server和Tomcat服务器。本文档使用了Tomcat 7.0.2作为应用服务器,并...
描述中的“tomcat集群配置所需的几个工具”可能包括Apache HTTP Server、Tomcat服务器、mod_proxy模块,以及可能的集群管理工具,如Apache HTTP Server的mod_jk或mod_proxy_ajp模块。这些工具的配合使用,可以实现多...
Apache负载均衡设置方法主要依赖于`mod_proxy`模块,这是一种在Apache HTTP服务器中实现负载均衡和反向代理的功能。负载均衡的目标是分散客户端的请求到多个后端服务器,以优化资源利用,提高响应速度,以及增强系统...
在标题中提到的`mod_jk-1.2.26-httpd-2.2.4.so`文件,是针对Apache 2.2.4版本的`mod_jk`模块,版本号为1.2.26,是连接Apache和Tomcat的关键组件。 集成步骤如下: 1. **安装Apache**:文件`apache_2.2.4-win32-x86...
标题中的“APACHE(proxy_ajp_stickysession) + TOMCAT实现高可用网站或管理系统集群”是指通过Apache HTTP服务器的Proxy_AJP模块配合Tomcat的stickysession特性,来构建一个高可用的Web服务集群。这样的集群可以提高...
mod_proxy连接方式是通过Apache的mod_proxy模块与Tomcat服务器进行通讯,mod_proxy模块可以将请求转发到Tomcat服务器上。mod_proxy连接方式比较简单易用,但是在高并发情况下可能会出现性能问题。 三、mod_proxy_...
在Apache中,可以通过模块mod_proxy和mod_proxy_balancer实现: 1. **mod_proxy**:这个模块允许Apache作为一个代理服务器,转发请求到其他服务器。 2. **mod_proxy_balancer**:用于创建和管理负载平衡群集,它可以...
`mod_jk.so`是Apache的一个模块,它用于连接Apache与Tomcat应用服务器,实现负载均衡和应用级代理,这对于运行Java Web应用程序的环境至关重要。在CentOS 6.5-6.9系统上编译安装Apache 2.4并添加mod_jk.so模块的步骤...
Apache的 mod_proxy 模块是实现这一功能的核心。这个模块允许Apache作为代理服务器,将HTTP请求透明地转发到内部网络上的其他服务器,比如Tomcat。通过mod_proxy,我们可以设置多个后端Tomcat服务器,形成一个集群,...
Apache与Tomcat结合使用时,通过AJP Proxy不仅可以实现高效的请求转发,还能够构建出高可用、高性能的应用集群。上述配置步骤涵盖了从Apache安装、配置到AJP Proxy与Tomcat集群的具体实施细节,为企业级项目提供了...
另一种常见的方式是使用mod_proxy模块,它支持HTTP、HTTPS和AJP(Apache JServ Protocol)协议。通过启用mod_proxy_ajp模块,Apache可以直接通过AJP协议与Tomcat通信。在httpd.conf配置文件中,可以通过ProxyPass和...
在大多数 Linux 发行版中,你可以通过包管理器(如 apt-get 或 yum)来安装,命令通常为 `sudo apt-get install libapache2-mod-proxy-ssl` 或 `sudo yum install mod_ssl`。 2. **配置问题**:检查 Apache 的配置...
Apache的mod_proxy模块是实现转发功能的关键。这个模块提供了HTTP、HTTPS、FTP等多种协议的代理支持。通过配置Apache的httpd.conf或vhost.conf文件,可以启用mod_proxy并定义转发规则。例如,以下配置将所有对...
4. **模块更新**:Apache 2.4.12中的多个核心模块得到了更新和增强,如mod_rewrite用于URL重写,mod_proxy用于反向代理和负载均衡,以及mod_deflate用于内容压缩,这些都为服务器的灵活性和功能扩展提供了基础。...
标题中的“webServer / Apache / apache / apache http server / mod_cluster”指的是Apache HTTP服务器的mod_cluster模块。Apache HTTP Server是世界上最流行的Web服务器软件之一,它提供了丰富的功能和强大的性能...