java - 请求未在 Jetty Confidential 端口上重定向

标签 java jetty

我是jetty的新用户,正在开发一个jetty服务器,它将所有http请求重定向到ssl端口。我在 jetty 教程中找到了 secret 端口的概念,但它不起作用。我正在添加代码快照,请纠正我出错的地方。

public class ServerMain {

    public static void main(String[] args) throws Exception {

        Server server = new Server();
        SslContextFactory con = new SslContextFactory();
        con.setKeyStorePath("D:/.keystore");
        con.setKeyStorePassword("password");
        con.setTrustStore("D:/jssecacerts");
        con.setTrustStorePassword("changeit");

        SslSelectChannelConnector connector = new SslSelectChannelConnector(con);
        connector.setHost("10.10.10.10");
        connector.setPort(8443);
        connector.setMaxIdleTime(30000);

        SelectChannelConnector connector1 = new SelectChannelConnector();
        connector1.setHost("10.10.10.10");
        connector1.setPort(8080);


        //connector1.setConfidentialPort(443);
        connector1.setConfidentialPort(8443);

        server.setConnectors(new Connector[] {connector, connector1});

        QueuedThreadPool threadPool = new QueuedThreadPool();

        threadPool.setMaxThreads(24);
        threadPool.setMinThreads(12);

        server.setThreadPool(threadPool);       

        ContextHandlerCollection contexts = new ContextHandlerCollection();

        ContextHandler mycontext = new ContextHandler();
        mycontext.setContextPath("/test");

        Handler handler = new MyHandler();
        mycontext.setHandler(handler);

        contexts.addHandler(mycontext);

        HandlerCollection handlers = new HandlerCollection();
        handlers.setHandlers(new Handler[] { contexts, new DefaultHandler() });

        server.setHandler(handlers);

        server.start();
        server.join();

    }   
}

MyHandler 也被添加到我正在处理请求并发送 200 ok 的位置。

请帮助我。

最佳答案

为什么jetty应该使用当前设置重定向到https连接器?要实现这样的目标,您必须向您的 web 应用程序添加安全约束,如下所述(我在 google 中找到的第一个链接。只需搜索 webapp security-constraint secret 即可找到更多示例):http://docs.oracle.com/javaee/6/tutorial/doc/gkbaa.html

或者添加一个处理程序,从 http 连接器重定向到 https 连接器或类似的东西。

关于java - 请求未在 Jetty Confidential 端口上重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15403687/

相关文章:

java - 在 jetty 停止之前调用函数

java - ClassNotFoundException : org. eclipse.jetty.util.装饰器

java - 从列表中删除元素时重置 for 循环

java - 实例变量类型相同?

java - 将 CORS 预检请求链接到其目标资源意味着什么

ssl - jetty sslConnetor 功能?

filter - 在 Jetty 中设置 GzipFilter 时出现问题

java - 如何获取设备的 GPS 详细信息

java - 存储大型 List<Map<String,String>> 的内存高效方式,其中许多映射条目是相同的

java - 使用 AppEngine 获取 Https URL