servlet实现简单的反向代理

项目基于Spring

须要的依赖为:

<dependency>
    <groupId>org.mitre.dsmiley.httpproxy</groupId>
    <artifactId>smiley-http-proxy-servlet</artifactId>
    <version>1.7</version>
</dependency>

只需要添加一个java文件即可,原理有待继续研究

package *.*.*.*;

import org.mitre.dsmiley.httpproxy.ProxyServlet;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * Created by czz on 2018/11/13.
 */
@Configuration
public class SolrProxyServletConfiguration {
    @Bean
    public ServletRegistrationBean servletRegistrationBean(){
        ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new ProxyServlet(), "/s/*");
        servletRegistrationBean.addInitParameter("targetUri", "http://www.baidu.com/s");
        servletRegistrationBean.addInitParameter(ProxyServlet.P_LOG, "false");
        return servletRegistrationBean;
    }
}

参考文章:Spring boot使用ProxyFilter进行服务代理

原文地址:https://www.cnblogs.com/czz-hl/p/9953903.html

时间: 2024-10-07 12:58:26

servlet实现简单的反向代理的相关文章

nginx简单实现反向代理和负载均衡

一.环境 一台nginx做反向代理:192.168.88.142 两台tomcat机器做web:192.168.88.143  192.168.88.144 安装过程略,下一篇详细说明 二.nginx配置文件 nginx:192.168.88.142 user  www www;                     ##用户和组 worker_processes  1;               ##和cpu核数有关 events { use epoll;                

go实现简单的反向代理工具

最近Jetbrians系列IDE更新至2017.3版本,激活检测机制也变成了动态封禁域名,导致大部分域名激活被屏蔽了,所以找了下资料,根据ilanyu的代码,改了下地址,实现了本地反向代理激活服务器. 具体Go代码如下test.go: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 package main import ( "flag"

配置简单的反向代理

注意点: 1.location如果不是直接写/,而是/xxx,那么访问的时候就需要输入你的域名/xxx.还有一个问题就是你的静态资源路径需要重写,或者干脆拿nginx当静态资源服务器.一般情况下,为了简单,如果需要代理多个域名或者说网站,可以建多个server,给多个域名,都是80端口 2.proxy_pass的地址http://xxxx.xxx.xxx.xxx:xxx/;最后的“/”要带上 3.确保端口开放了并且未被占用 4.windows下重启nginx可以用nginx.exe -s rel

Nodejs实现简单的反向代理

var http = require('http'), httpProxy = require('http-proxy'); // 新建一个代理 Proxy Server 对象 var proxy = httpProxy.createProxyServer({}); // 捕获异常 proxy.on('error', function (err, req, res) { res.writeHead(500, { 'Content-Type': 'text/plain' }); res.end('

IIS简单的反向代理设置

下载IIS扩展 1.URL Rewrite 地址: https://www.iis.net/downloads/microsoft/url-rewrite 2.Application Request Routing 地址:https://www.iis.net/downloads/microsoft/application-request-routing 操作 原文 https://blogs.msdn.microsoft.com/friis/2016/08/25/setup-iis-with-

nginx简单反向代理和负载均衡(ubuntu)

nginx简单反向代理与负载均衡 环境:三台ubuntu 12.04.5 虚拟机    均装有nginx 1.1.19 以下u1(192.168.240.129) ,u2(192.168.240.130),u3(192.168.240.131)代表三台虚拟机 简单的反向代理配置:(u1反向到u2) u1的配置: server { listen 80 default_server; server_name  a.jh.net; index index.html index.php root /ho

nginx + IIS 反向代理

简化拓扑如图 我们这里只简单为描述原理来说明反向代理的过程 前端nginx反向代理true IIS server nginx反向代理配置代码如下.这里我只摘取其中一server,主要在header头,当后端只有一台IIS服务器且运行多个虚拟主机的时候适用. server { listen 80; server_name site1.cxsz.com; #charset koi8-r; #access_log logs/host.access.log main; location / { prox

(转)ubuntu apache2 的负载均衡和反向代理

apache功能其实很是强大,最近一段时间研究了下apache的反向代理和负载均衡,反向代理网协的外网出口和我的博客出口就是通过apache的反向代理实现的,总结一下,重点说说负载均衡的配置. 首先说先实验环境吧 操作系统:DEBIAN 5.03(Ubuntu也可以同理配置) 一.安装apache加载模块 apt-get install apache2然后进入到apache的配置目录cd /etc/apache2apache的反向代理和负载均衡其实利用的都是反向代理的原理,至于什么叫做反向代理可

nginx常用配置系列-反向代理

接上篇,反向代理的原理与用途很多地方有讲,用文字说再多可能也表达不清楚,下面贴一张拓扑图,介绍下什么叫反向代理 以上图有两种情景 1. 访问者的客户端是 local ,要访问baidu的服务器,baidu的前台服务器本身不处理具体的业务,只是根据访问的数据类型,或者业务类型等(就是一些特定的规则,比如URL正则),将不同类的请求转发到不同的后端服务器,例如server1是静态资源的,server2是处理账户系统的等 2. 后端的每个server提供的服务完全相同,baidu的前台服务器根据后端每