Tomcat实现反向代理

实验环境搭建:

web server             Director: 192.168.11.131(host-only)     192.168.1.114(桥接)   安装好Apache

app server1      RS1: 192.168.11.132(host-only)                安装好tomcat

app server2      RS2: 192.168.11.129(host-only)                安装好tomcat

一、使用Apache的mod_proxy与TomCat连接

1.检查Apache是否已经加载所需模块

httpd -D DUMP_MODULES|grep proxy

2.注释掉httpd.conf中的DocumentRoot "/var/www/html"

3.在/etc/httpd/conf.d,vim httpd-proxy.conf

<VirtualHost *:80>
ProxyVia On
ProxyRequests Off
ProxyPass / http://192.168.11.132:8080/rs1/
ProxyPassReverse / http://192.168.1.114:8080:rs1/
<Proxy *>
#  Require all granted
</Proxy>
<Location />
#   Require all granted
</Location>
</VirtualHost>

注解:

ProxyVia off
#用于控制httpd首部是否使用via,默认off
ProxyRequests off
#是否开启Apache的正向代理功能,启用此项必须启用mod_proxy_http模块,如果设置了ProxyPass,则必须设置为off
ProxyPass / http://192.168.11.132:8080/rs1/
#path(/)为当前服务器上的某虚拟路径,URL(http://192.168.11.132:8080)为后端服务器的某URL路径,
如果Path以/结尾,则URL也必须以/结尾,另外httpd2.1以后支持后端与服务器的连接池功能,可以使用key=value的方式定义.常用key
    min:连接池最小要初始化的空间大小
    max:连接池的最大容量
    loadefactor: 用于负载均衡,定义后端服务器的权重
    retry:连接到后端得到错误响应等待多长时间再重试,单位是秒
ProxyPassReverse / http://192.168.1.114:8080/rs1
#在反向代理中必须使用此指令避免重定向报文绕过代理服务器
<Proxy *>

#如果小于2.4,就去掉Require all granted这行
   Require all granted
</Proxy>
<Location />

#如果小于2.4,就去掉Require all granted这行
   Require all granted
</Location>

4.验证访问 http://192.168.1.114

时间: 2024-10-06 16:51:06

Tomcat实现反向代理的相关文章

ubuntu 16.04利用docker搭建java+tomcat+nginx反向代理/动静分离

ubuntu 16.04利用docker搭建java+tomcat+nginx反向代理 新建两个docker容器 docker run -it --name Tomcat-mysql -v /mnt:/mnt -p 8866:80 -p 33006:3306 ubuntu /bin/bash docker run -itd --name webserver -p 8888:80 -v /mnt/:/mnt/ ubuntu /bin/bash [email protected]:~# docker

nginx+tomcat实现反向代理的负载均衡

nginx+tomcat实现反向代理的负载均衡 安装java环境 server12: [[email protected] ~]# sh jdk-6u32-linux-x64.bin [[email protected] ~]# mv jdk1.6.0_32/ /usr/local/ [[email protected] ~]# cd /usr/local/ [[email protected] local]# mv jdk1.6.0_32/ java [[email protected] lo

nginx和tomcat实现反向代理、负载均衡和session共享

这类的文章非常多,nginx和tomcat实现反向代理.负载均衡实现非常easy,能够參照http://blog.csdn.net/liuzhigang1237/article/details/8880752 但tomcat借助memcache实现session共享非常麻烦(和jar的版本号有关),这里做个记录. 我的tomcat的版本号是7.0.53,须要加入的jar是: couchbase-client-1.2.0 javolution-5.4.3.1 Memcached-Java-Clie

Nginx+Tomcat实现反向代理及动静分离

通常tomcat部署结构 通常tomcat前端是nginx或apache,后端都为tomcat,也就意味着无论前端是什么角色都是以代理的方式进行工作的 但是要注意的是如果基于nginx做反向代理,转发请求到tomcat的时候是基于http协议进行转发的 但注意的是tomcat的连接器有httpajp jk2 jserv 而如果基于nginx做转发的话只支持http做转发 而如果apache做代理转发的话,几乎常用协议都支持 但常用的连接类型都是ajp协议,因为ajp协议可以工作在二进制模式下,而

Tomcat ngxin 反向代理

tomcat nginx 反向代理 安装nginx yum直接安装 yum install nginx –y 也可以编译安装 这是用编译安装,新手可以用yum安装 配置文件在 /etc/nginx/conf/nginx.conf目录下 修改nginx配置文件 ????upstream web_pools { ????????server 10.0.0.17:8081; ????????server 10.0.0.17:8082; ????server { ????????listen 80; ?

Centos7下Nginx+Tomcat配置反向代理,使用memcached解决session一致性问题

一.session一致性问题 使用集群方案解决网站高并发问题时,就会部署多台应用服务器.当用户第一次通过客户端(如:浏览器)访问服务器时,服务器会创建对应的session, 使用Nginx反向代理,假如用户A第一次访问站点,被反向代理到服务器一处理,服务器一创建对应sessionA记录信息,用户A再次访问站点时,被反向代理到服务二处理, 而服务器二没有记录用户A的session信息,就会新创建sessionB,导致用户A之前操作丢失. 我们可以通过让多个服务器统一到同一个地方新建session和

Nginx+apache/Tomcat实现反向代理与动静分离

其实本人比较喜欢nginx跑静态和做负载反向代理,动态php还是交给apache处理比较稳定,jsp就交给tomcat.resin或jboss.nginx跑静态的能力是无与伦比的,是目前web服务器里最强的.nginx和apache.tomcat.resin的动静分离配置其实很简单,就几句配置,稳定性也非常好. 1.nginx和apache的动静分离配置: 把下面配置放到nginx配置文件相应的server { }里面,如果使用其他端口号,改一下就行: #所有php的动态页面均交由apache处

tomcat+http反向代理+memcached session会话保持

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选.对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用.)页面的访问请求.实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的. 诀窍是,当配置正确时,A

Nginx+Tomcat实现反向代理与动静分离

1. 什么是动静分离 所谓动静分离就是通过nginx(或apache等)来处理用户端请求的静态页面,tomcat(或weblogic)处理动态页面,从而达到动静页面访问时通过不同的容器来处理. 2. 为什么做动静分离 Nginx处理静态页面的效率远高于tomcat,所有我们只让tomcat干自己擅长的事情,以事实说话,我们通过ab进行对一个静态页面访问做压力测试.   www.2cto.com 1) 做动静分离后nginx处理静态页面的压力测试: # ab -n 1000 -c 200 http