comparison server-setup.html @ 1682:8a9c66abb57c

Creating site for 2.5-SNAPSHOT
author Robert Casties <casties@mpiwg-berlin.mpg.de>
date Wed, 14 Mar 2018 18:57:23 +0000
parents 1beeb9319d78
children 79c837179ffb
comparison
equal deleted inserted replaced
1666:1beeb9319d78 1682:8a9c66abb57c
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <!-- 2 <!--
3 | Generated by Apache Maven Doxia at 2017-11-21 3 | Generated by Apache Maven Doxia at 2018-03-14
4 | Rendered using Apache Maven Fluido Skin 1.3.0 4 | Rendered using Apache Maven Fluido Skin 1.3.0
5 --> 5 -->
6 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 6 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7 <head> 7 <head>
8 <meta charset="UTF-8" /> 8 <meta charset="UTF-8" />
9 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 9 <meta name="viewport" content="width=device-width, initial-scale=1.0" />
10 <meta name="Date-Revision-yyyymmdd" content="20171121" /> 10 <meta name="Date-Revision-yyyymmdd" content="20180314" />
11 <meta http-equiv="Content-Language" content="en" /> 11 <meta http-equiv="Content-Language" content="en" />
12 <title>digilib - The Digital Image Library &#x2013; Server setups for digilib</title> 12 <title>digilib - The Digital Image Library &#x2013; Server setup for digilib</title>
13 <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" /> 13 <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" />
14 <link rel="stylesheet" href="./css/site.css" /> 14 <link rel="stylesheet" href="./css/site.css" />
15 <link rel="stylesheet" href="./css/print.css" media="print" /> 15 <link rel="stylesheet" href="./css/print.css" media="print" />
16 16
17 17
39 39
40 <div id="breadcrumbs"> 40 <div id="breadcrumbs">
41 <ul class="breadcrumb"> 41 <ul class="breadcrumb">
42 42
43 43
44 <li id="publishDate">Last Published: 2017-11-21</li> 44 <li id="publishDate">Last Published: 2018-03-14</li>
45 <li class="divider">|</li> <li id="projectVersion">Version: 2.5-SNAPSHOT</li> 45 <li class="divider">|</li> <li id="projectVersion">Version: 2.5-SNAPSHOT</li>
46 46
47 47
48 48
49 49
100 <a href="install-digilib.html" title="Installing digilib"> 100 <a href="install-digilib.html" title="Installing digilib">
101 <i class="none"></i> 101 <i class="none"></i>
102 Installing digilib</a> 102 Installing digilib</a>
103 </li> 103 </li>
104 104
105 <li> 105 <li class="active">
106 106
107 <a href="server-setups.html" title="Server setups"> 107 <a href="#"><i class="none"></i>Server setup</a>
108 <i class="none"></i> 108 </li>
109 Server setups</a>
110 </li>
111 <li class="nav-header">Configuration</li> 109 <li class="nav-header">Configuration</li>
112 110
113 <li> 111 <li>
114 112
115 <a href="digilib-config.html" title="Configuring digilib"> 113 <a href="digilib-config.html" title="Configuring digilib">
198 </div> 196 </div>
199 197
200 198
201 <div id="bodyColumn" class="span9" > 199 <div id="bodyColumn" class="span9" >
202 200
203 <h1>Server setups for digilib</h1> 201 <h1>Server setup for digilib</h1>
204 <p>There are a variety of ways to deploy digilib on different server configurations for production sites. </p> 202 <p>There are a variety of ways to deploy digilib on different server configurations for production sites. </p>
205 <p>Here are some examples.</p> 203 <p>Here are some examples and tips.</p>
206 <div class="section"> 204 <div class="section">
207 <h2><a name="nginx_as_proxy"></a>nginx as proxy</h2> 205 <h2><a name="nginx_as_proxy"></a>nginx as proxy</h2>
208 <p>This is an example configuration for <tt>nginx</tt> as a proxy for a single instance of digilib (listening on port <tt>8080</tt>) that handles transport encryption and restricts access to sensitive data to the gateway of a local network (<tt>1.2.3.4</tt>).</p> 206 <p>This is an example configuration for <tt>nginx</tt> as a proxy for a single instance of digilib (listening on port <tt>8080</tt>) that handles transport encryption and restricts access to sensitive data to the gateway of a local network (<tt>1.2.3.4</tt>).</p>
209 207
210 <div class="source"> 208 <div class="source">
228 226
229 location / { 227 location / {
230 proxy_pass http://localhost:8080; 228 proxy_pass http://localhost:8080;
231 } 229 }
232 } 230 }
233 </pre></div></div></div> 231 </pre></div></div>
234 <div class="section"> 232 <div class="section">
235 <h2><a name="Resources"></a>Resources</h2> 233 <h3><a name="Resources"></a>Resources</h3>
236 234
237 <ul> 235 <ul>
238 236
239 <li>the <a href="nginx.org/en/docs/">nginx documentation</a></li> 237 <li>the <a href="nginx.org/en/docs/">nginx documentation</a></li>
240 </ul></div> 238 </ul></div></div>
239 <div class="section">
240 <h2><a name="Apache_as_proxy_and_load-balancer"></a>Apache as proxy and load-balancer</h2>
241 <p>This is an example configuration for <a class="externalLink" href="https://httpd.apache.org/">Apache</a> as a proxy and load balancer for two instances of digilib (one running on localhost, port 8080 and another on otherserver, port 8080), using SSL and http/2:</p>
242
243 <div class="source">
244 <div class="source">
245 <pre>&lt;VirtualHost *:443&gt;
246 # HTTP/2 protocol (Apache 2.4.29 and later)
247 Protocols h2 http/1.1
248 ServerName digilib.example.com
249 SSLCertificateFile /etc/ssl/private/digilib-cert.pem
250 SSLCertificateKeyFile /etc/ssl/private/digilib-key.pem
251 SSLEngine on
252
253 DocumentRoot /var/www
254 &lt;Directory /&gt;
255 Options FollowSymLinks
256 AllowOverride None
257 &lt;/Directory&gt;
258 &lt;Directory /var/www/&gt;
259 Options Indexes FollowSymLinks MultiViews
260 AllowOverride None
261 Order allow,deny
262 allow from all
263 &lt;/Directory&gt;
264
265 ErrorLog ${APACHE_LOG_DIR}/digilib-ssl-error.log
266 LogLevel warn
267 CustomLog ${APACHE_LOG_DIR}/digilib-ssl-access.log combined
268
269 # do not forward-proxy!
270 ProxyRequests off
271 # set proxy proto header
272 RequestHeader set X-Forwarded-Proto &quot;https&quot;
273 # digilib instances
274 &lt;Proxy balancer://digilibs&gt;
275 BalancerMember http://127.0.0.1:8080
276 BalancerMember http://otherserver.example.com:8080
277 &lt;/Proxy&gt;
278 # balance by busy-ness
279 ProxyPass /digitallibrary balancer://digilibs/digitallibrary lbmethod=bybusyness
280 ProxyPassReverse /digitallibrary balancer://digilibs/digitallibrary
281
282 # balancer-manager frontend (be careful!)
283 &lt;Location /balancer-manager&gt;
284 SetHandler balancer-manager
285 Require host localhost
286 &lt;/Location&gt;
287 &lt;/VirtualHost&gt;
288 </pre></div></div></div>
289 <div class="section">
290 <h2><a name="Jetty_behind_a_proxy"></a>Jetty behind a proxy</h2>
291 <p>When you are using <a class="externalLink" href="https://www.eclipse.org/jetty/">Jetty</a> as servlet container behind an Apache or nginx proxy then you should make sure that Jetty processes the <tt>X-Forwarded-*</tt> headers from the proxy server to derive the correct request URL for the servlets.</p>
292 <p>Please see <a class="externalLink" href="http://www.eclipse.org/jetty/documentation/9.4.x/configuring-connectors.html#_proxy_load_balancer_connection_configuration">this information for Jetty 9.4</a> or <a class="externalLink" href="https://wiki.eclipse.org/Jetty/Tutorial/Apache#Configuring_mod_proxy_http">this information for Jetty 8 and earlier versions</a>.</p></div>
241 </div> 293 </div>
242 </div> 294 </div>
243 </div> 295 </div>
244 296
245 <hr/> 297 <hr/>
246 298
247 <footer> 299 <footer>
248 <div class="container-fluid"> 300 <div class="container-fluid">
249 <div class="row span12">Copyright &copy; 2001-2017 301 <div class="row span12">Copyright &copy; 2001-2018
250 <a href="https://robcast.github.io/digilib/">digilib Community</a>. 302 <a href="https://robcast.github.io/digilib/">digilib Community</a>.
251 All Rights Reserved. 303 All Rights Reserved.
252 304
253 </div> 305 </div>
254 306