使用SPDY运行Jetty开箱即用

时间:2015-02-10 12:39:26

标签: ssl jetty spdy

我从Tomcat切换到Jetty作为ServletContainer并尝试使用jetty的所有默认设置启用SPDY。这是我启用SPDY的步骤:

  1. 我下载并解压缩码头
  2. 我在webapps和一些只是项目特定的部署描述符中复制.war-File。
  3. (现在是棘手的部分)我通过执行以下命令启用SPDY:

    java -jar start.jar --add-to-startd = spdy

  4. 我接受不受信任的 protonego-impl ,现在存在 start.d / spdy.ini 文件。

    1. 现在用以下方式启动码头

      java -jar start.jar

    2. 另外,我通过取消注释 etc / protonego-alpn.xml 命令来启用一些调试:

      <Set class="org.eclipse.jetty.alpn.ALPN" name="debug" type="boolean">true</Set>
      

      在服务器启动时,我得到:

        

      2015-02-10 13:22:10.292:INFO:oejs.ServerConnector:main:已启动ServerConnector @ 5841a6a3 {HTTP / 1.1} {0.0.0.0:8080}   2015-02-10 13:22:10.387:INFO:oejs.ServerConnector:main:已启动ServerConnector @ 5c9f2ea4 {SSL-alpn} {0.0.0.0:8443}

      告诉我端口8080运行正常HTTP和8443运行ALPN,它支持以下协议:spdy / 3,spdy / 2,http / 1.1。 但是,如果我从我的项目中访问HTTPS页面,我会得到以下信息:

        

      [S] ALPN协议[spdy / 3.1,http / 1.1]从客户端收到783e3eb9 [SSLEngine [hostname = 127.0.0.1 port = 50458] SSL_NULL_WITH_NULL_NULL]   [S] ALPN协议&#39; http / 1.1&#39;为783e3eb9选择[SSLEngine [hostname = 127.0.0.1 port = 50458] SSL_NULL_WITH_NULL_NULL]

      我理解上面的规定,服务器支持spdy / 3.1和http / 1.1被选中。但删除除spdy / 3以外的所有连接我都有EofExceptions但无法访问HTTPS页面。

      我使用Java JDK 1.7和Chrome与SPDY-Indicator和Jetty 9.2.5以及所有配置而不是XML。 有人可以帮助我或者说明这个问题吗? 哦,并且它不需要使用ALPN,我想要spdy,这背后的技术目前是不必要的。

1 个答案:

答案 0 :(得分:0)

Jetty不支持SPDY/3.1,最多只支持SPDY/3

事实上,Jetty永远不会支持SPDY/3.1

SPDY和NPN刚刚从即将发布的Jetty 9.3.0版本的代码树中删除。

http://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/commit/?id=2162455b72d5a474bba47d5daf5543d46c2688be