X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/d2c83d07d878fbe74e30c0f964933868046e86db..dd1ec4eb9bd23c2e7d93451b41f3eda99ffb9f08:/config/nginx.conf diff --git a/config/nginx.conf b/config/nginx.conf index 1108be5dc..ae349b746 100644 --- a/config/nginx.conf +++ b/config/nginx.conf @@ -64,6 +64,10 @@ http { server 127.0.0.1:8023; server 127.0.0.1:8024; server 127.0.0.1:8025; + } + + # Define fastcgi backend for geocoder searches + upstream geocoder_backend { server 127.0.0.1:8026; server 127.0.0.1:8027; server 127.0.0.1:8028; @@ -103,13 +107,13 @@ http { server 10.0.0.10:8003; server 10.0.0.11:8003; server 10.0.0.12:8003; + server 10.0.0.10:8004; + server 10.0.0.11:8004; + server 10.0.0.12:8004; } # Define fastcgi backend for tiles@home requests upstream tah_backend { - server 10.0.0.10:8004; - server 10.0.0.11:8004; - server 10.0.0.12:8004; server 10.0.0.10:8005; server 10.0.0.11:8005; server 10.0.0.12:8005; @@ -157,7 +161,22 @@ http { # Strip asset tags location ~ ^/(images|javascripts|openlayers|stylesheets|user/image)/ { + # Strip asset tags rewrite ^/(.*)/[0-9]+$ /$1; + + # Set expiry to the maximum - the asset tag will change + # when there is a new version + expires max; + + # Only cache OpenLayers for seven days though + if ($uri ~ ^/openlayers/) { + expires 7d; + } + } + + # Cache the embedded map page for seven days + location ~ ^/export/embed.html$ { + expires 7d; } # Include fastcgi configuration @@ -205,15 +224,16 @@ http { return 404; } - # Handle Special Case Expiry - location ~ ^/openlayers/ { - expires 7d; - } - location ~ ^/export/embed.html$ { - expires 7d; + # Send unversioned capabilities requests to the api backend + location = /api/capabilities { + fastcgi_pass api_backend; + break; } - location ~ ^/(images|javascripts|stylesheets)/ { - expires max; + + # Send geocoder searches to the geocoder backend + location /geocoder/ { + fastcgi_pass geocoder_backend; + break; } # Send everything else to the web backend unless it exists @@ -227,11 +247,6 @@ http { } } - location = /api/capabilities { - fastcgi_pass web_backend; - break; - } - # Set the MIME type for crossdomain.xml policy files # or flash will ignore it location ~ /crossdomain\.xml$ {