具有SSL支持的Jetty ProxyServlet [英] Jetty ProxyServlet with SSL support

查看:162
本文介绍了具有SSL支持的Jetty ProxyServlet的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Jetty的ProxyServlet作为HTTP代理.

I am using Jetty's ProxyServlet as a HTTP proxy.

启动服务器并在firefox中添加socks代理后,我可以通过代理访问网站,而不会出现任何问题.

After I start the server and add the socks proxy in firefox I can access websites through the proxy without any problems.

问题是当我尝试通过代理访问HTTPs网站时. Firefox显示找不到服务器"错误,并且在调试过程中我的Java代码没有任何反应.

The problem is that when I try to access a HTTPs website through the proxy. Firefox displays a "Server not found" error and during debugging I don't see anything happening in my Java code.

我想在这里添加一些对Jetty的SSL支持吗?

Am I missing something here to add SSL support to Jetty?

这是代码的一部分:

    Server httpProxy = new Server(8087);

    ServletHandler servletHandler = new ServletHandler();
    servletHandler.addServletWithMapping(new ServletHolder(new TunnelProxyServlet()), "/*");

    httpProxy.setHandler(servletHandler);
    try {
        httpProxy.start();
    } catch (Exception ex) {
        Logger.getLogger(HttpProxy.class.getName()).log(Level.SEVERE, null, ex);
    }

    public class TunnelProxyServlet extends ProxyServlet {
      @Override
      public void init(ServletConfig config) throws ServletException {
        super.init(config);
        System.out.println("init done !");
      }

      @Override
      public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
        System.out.println("got a request !");
        super.service(req, res);
      } 
   }

推荐答案

您可以使用"ConnectHandler"

You can use a "ConnectHandler"

这篇关于具有SSL支持的Jetty ProxyServlet的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆