Skip to main content
aboutsummaryrefslogtreecommitdiffstats
blob: d3244b67c0b9887d20dab0b9c809f67aad43c839 (plain) (blame)
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">

<Configure id="Server" class="org.eclipse.jetty.server.Server">

    <!-- =========================================================== -->
    <!-- HttpChannel Configuration                                   -->
    <!-- =========================================================== -->
    <New id="httpConfig" class="org.eclipse.jetty.server.HttpConfiguration">
        <Set name="secureScheme">https</Set>
        <Set name="securePort">
            <SystemProperty name="jetty.spdy.port" default="8443"/>
        </Set>
        <Set name="outputBufferSize">32768</Set>
        <Set name="requestHeaderSize">8192</Set>
        <Set name="responseHeaderSize">8192</Set>
        <Call name="addCustomizer">
            <Arg>
                <New class="org.eclipse.jetty.server.ForwardedRequestCustomizer"/>
            </Arg>
        </Call>
    </New>


    <!-- =========================================================== -->
    <!-- Setup a SSL Context factory                                 -->
    <!-- =========================================================== -->
    <New id="sslContextFactory" class="org.eclipse.jetty.util.ssl.SslContextFactory">
        <Set name="KeyStorePath"><Property name="jetty.home" default="."/>/etc/keystore
        </Set>
        <Set name="KeyStorePassword">OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4</Set>
        <Set name="KeyManagerPassword">OBF:1u2u1wml1z7s1z7a1wnl1u2g</Set>
        <Set name="TrustStorePath"><Property name="jetty.home" default="."/>/etc/keystore
        </Set>
        <Set name="TrustStorePassword">OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4</Set>
    </New>

    <!-- =========================================================== -->
    <!-- Add HTTP Customizer for Secure request                      -->
    <!-- =========================================================== -->
    <Ref refid="httpConfig">
        <Call name="addCustomizer">
            <Arg>
                <New class="org.eclipse.jetty.server.SecureRequestCustomizer"/>
            </Arg>
        </Call>
    </Ref>

    <!-- =========================================================== -->
    <!-- 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>

    <!-- =========================================================== -->
    <!-- Set connectors                                              -->
    <!-- =========================================================== -->
    <Call id="sslConnector" 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">
                        <Item>
                            <New class="org.eclipse.jetty.server.SslConnectionFactory">
                                <Arg name="next">npn</Arg>
                                <Arg name="sslContextFactory">
                                    <Ref refid="sslContextFactory"/>
                                </Arg>
                            </New>
                        </Item>

                        <Item>
                            <New class="org.eclipse.jetty.spdy.server.NPNServerConnectionFactory">
                                <Arg name="protocols">
                                    <Array type="String">
                                        <Item>spdy/3</Item>
                                        <Item>spdy/2</Item>
                                        <Item>http/1.1</Item>
                                    </Array>
                                </Arg>
                                <Set name="defaultProtocol">http/1.1</Set>
                            </New>
                        </Item>

                        <Item>
                            <New class="org.eclipse.jetty.spdy.server.http.HTTPSPDYServerConnectionFactory">
                                <Arg name="version" type="int">3</Arg>
                                <Arg name="config">
                                    <Ref refid="httpConfig"/>
                                </Arg>
                                <!-- <Arg name="pushStrategy"><Ref refid="pushStrategy"/></Arg> -->
                            </New>
                        </Item>

                        <Item>
                            <New class="org.eclipse.jetty.spdy.server.http.HTTPSPDYServerConnectionFactory">
                                <Arg name="version" type="int">2</Arg>
                                <Arg name="config">
                                    <Ref refid="httpConfig"/>
                                </Arg>
                            </New>
                        </Item>

                        <Item>
                            <New class="org.eclipse.jetty.server.HttpConnectionFactory">
                                <Arg name="config">
                                    <Ref refid="httpConfig"/>
                                </Arg>
                            </New>
                        </Item>
                    </Array>
                </Arg>
                <Set name="host">
                    <Property name="jetty.host"/>
                </Set>
                <Set name="port">
                    <SystemProperty name="jetty.spdy.port" default="8443"/>
                </Set>
                <Set name="idleTimeout">30000</Set>
            </New>
        </Arg>
    </Call>

</Configure>

Back to the top