| <?xml version="1.0" encoding="UTF-8"?> |
| <!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd"> |
| |
| <!-- ============================================================= --> |
| <!-- Configure a SPDY connector. --> |
| <!-- This configuration must be used in conjunction with jetty.xml --> |
| <!-- and jetty-ssl.xml --> |
| <!-- ============================================================= --> |
| <Configure id="Server" class="org.eclipse.jetty.server.Server"> |
| |
| <!-- =========================================================== --> |
| <!-- Create a push strategy which can be used by reference by --> |
| <!-- individual connection factories below. --> |
| <!-- --> |
| <!-- Consult the javadoc of o.e.j.spdy.server.http.ReferrerPushStrategy --> |
| <!-- for all configuration that may be set here. --> |
| <!-- =========================================================== --> |
| <New id="pushStrategy" class="org.eclipse.jetty.spdy.server.http.ReferrerPushStrategy"> |
| <!-- Uncomment to blacklist browsers for this push strategy. If one of the blacklisted Strings occurs in the |
| user-agent header sent by the client, push will be disabled for this browser. This is case insensitive" --> |
| <!-- |
| <Set name="UserAgentBlacklist"> |
| <Array type="String"> |
| <Item>.*(?i)firefox/14.*</Item> |
| <Item>.*(?i)firefox/15.*</Item> |
| <Item>.*(?i)firefox/16.*</Item> |
| </Array> |
| </Set> |
| --> |
| |
| <!-- Uncomment to override default file extensions to push --> |
| <!-- |
| <Set name="PushRegexps"> |
| <Array type="String"> |
| <Item>.*\.css</Item> |
| <Item>.*\.js</Item> |
| <Item>.*\.png</Item> |
| <Item>.*\.jpg</Item> |
| <Item>.*\.gif</Item> |
| </Array> |
| </Set> |
| --> |
| <Set name="referrerPushPeriod">5000</Set> |
| <Set name="maxAssociatedResources">32</Set> |
| </New> |
| |
| <!-- =========================================================== --> |
| <!-- Add a SPDY/HTTPS Connector. --> |
| <!-- Configure an o.e.j.server.ServerConnector with connection --> |
| <!-- factories for TLS (aka SSL), ProtoNego, SPDY and HTTP to --> |
| <!-- provide a connector that can accept HTTPS or SPDY --> |
| <!-- connections. --> |
| <!-- --> |
| <!-- All accepted TLS connections are initially wired to a --> |
| <!-- Protonego connection, which attempts to use a TLS extension --> |
| <!-- to negotiation the protocol. If it is not supported by --> |
| <!-- the client, then the connection is replaced by a HTTP --> |
| <!-- connection. If a specific protocol version (eg spdy/3) is --> |
| <!-- negotiated, then the appropriate connection factory --> |
| <!-- is used to create a connection to replace the connection --> |
| <!-- --> |
| <!-- The final result is a SPDY or HTTP connection wired behind --> |
| <!-- a TLS (aka SSL) connection. --> |
| <!-- --> |
| <!-- Consult the javadoc of o.e.j.server.ServerConnector and the --> |
| <!-- specific connection factory types for all configuration --> |
| <!-- that may be set here. --> |
| <!-- =========================================================== --> |
| <Call id="spdyConnector" name="addConnector"> |
| <Arg> |
| <New class="org.eclipse.jetty.server.ServerConnector"> |
| <Arg name="server"> |
| <Ref refid="Server"/> |
| </Arg> |
| <Arg name="factories"> |
| <Array type="org.eclipse.jetty.server.ConnectionFactory"> |
| |
| <!-- SSL Connection factory with Protonego as next protocol --> |
| <Item> |
| <New class="org.eclipse.jetty.server.SslConnectionFactory"> |
| <Arg name="next"><Property name="protonego"/></Arg> |
| <Arg name="sslContextFactory"> |
| <Ref refid="sslContextFactory"/> |
| </Arg> |
| </New> |
| </Item> |
| |
| <!-- NPN Connection factory with HTTP as default protocol --> |
| <Item> |
| <Ref refid="protonego"/> |
| </Item> |
| |
| <!-- SPDY/3 Connection factory --> |
| <Item> |
| <New class="org.eclipse.jetty.spdy.server.http.HTTPSPDYServerConnectionFactory"> |
| <Arg name="version" type="int">3</Arg> |
| <Arg name="config"> |
| <Ref refid="sslHttpConfig"/> |
| </Arg> |
| <!-- Set the initial window size for this SPDY connector. --> |
| <!-- See: http://www.chromium.org/spdy/spdy-protocol/spdy-protocol-draft3#TOC-2.6.8-WINDOW_UPDATE --> |
| <Set name="initialWindowSize"><Property name="spdy.initialWindowSize" default="65536"/></Set> |
| <!-- Uncomment to enable ReferrerPushStrategy --> |
| <!--<Arg name="pushStrategy"><Ref refid="pushStrategy"/></Arg>--> |
| </New> |
| </Item> |
| |
| <!-- SPDY/2 Connection factory --> |
| <Item> |
| <New class="org.eclipse.jetty.spdy.server.http.HTTPSPDYServerConnectionFactory"> |
| <Arg name="version" type="int">2</Arg> |
| <Arg name="config"> |
| <Ref refid="sslHttpConfig"/> |
| </Arg> |
| <!-- Set the initial window size for this SPDY connector. --> |
| <!-- See: http://www.chromium.org/spdy/spdy-protocol/spdy-protocol-draft3#TOC-2.6.8-WINDOW_UPDATE --> |
| <Set name="initialWindowSize"><Property name="spdy.initialWindowSize" default="65536"/></Set> |
| </New> |
| </Item> |
| |
| <!-- HTTP Connection factory --> |
| <Item> |
| <New class="org.eclipse.jetty.server.HttpConnectionFactory"> |
| <Arg name="config"> |
| <Ref refid="sslHttpConfig"/> |
| </Arg> |
| </New> |
| </Item> |
| </Array> |
| </Arg> |
| |
| <Set name="host"><Property name="jetty.host"/></Set> |
| <Set name="port"><Property name="spdy.port" default="443"/></Set> |
| <Set name="idleTimeout"><Property name="spdy.timeout" default="30000"/></Set> |
| </New> |
| </Arg> |
| </Call> |
| |
| </Configure> |