X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/751317da2082df39c5fa65f432aa70d68bd8c1ac..ba987e5a484374712c87728b662798e57f57ea6a:/cookbooks/tilecache/templates/default/nginx_tile.conf.erb?ds=inline diff --git a/cookbooks/tilecache/templates/default/nginx_tile.conf.erb b/cookbooks/tilecache/templates/default/nginx_tile.conf.erb index a6adb0e5b..903eeb6cf 100644 --- a/cookbooks/tilecache/templates/default/nginx_tile.conf.erb +++ b/cookbooks/tilecache/templates/default/nginx_tile.conf.erb @@ -1,29 +1,34 @@ # DO NOT EDIT - This file is being maintained by Chef upstream tile_cache_backend { - server 127.0.0.1:8080; - server 127.0.0.2:8080; + server 127.0.0.1:8080 max_fails=32 fail_timeout=2s; + server 127.0.0.2:8080 max_fails=32 fail_timeout=2s; - # Add the other caches to relieve pressure if local squid failing + # Add the tile_siblings caches to relieve pressure if local squid failing # Balancer: round-robin +<% server_weight = 20 -%> +<% @node[:tilecache][:tile_siblings].each do |cache_peer| -%> <% @caches.each do |cache| -%> +<% if cache_peer == cache[:fqdn] -%> <% if cache[:hostname] != node[:hostname] -%> <% cache.ipaddresses(:family => :inet, :role => :external).sort.each do |address| -%> - server <%= address %>:80 backup; # Server <%= cache[:hostname] %> + server <%= address %>:80 weight=<%= server_weight.div(10) %> max_fails=32 fail_timeout=2s; # Server <%= cache[:hostname] %> +<% server_weight += 5 -%> +<% end -%> +<% end -%> <% end -%> <% end -%> <% end -%> - keepalive 512; - keepalive_requests 1024; + keepalive 128; } # Geo Map of tile caches geo $tile_cache { - default 0; + default "client"; <% @caches.each do |cache| -%> <% cache.ipaddresses(:family => :inet, :role => :external).sort.each do |address| -%> - <%= address %> 1; # <%= cache[:hostname] %> + <%= address %> "cache"; # <%= cache[:hostname] %> <% end -%> <% end -%> } @@ -71,6 +76,13 @@ map $http_user_agent $denied_scraper { 'com.soft373.taptaxi' 1; 'com.kradac.ktxcore' 1; 'ru.crowdsystems.topcontrol.knd' 1; + 'pl.itaxi.driver' 1; + 'net.uztaxi.driver' 1; + 'OSMDroid/2.1 (its; rutaxi 3.28.0)' 1; + 'com.helleniccomms.mercedes.driver' 1; + 'ru.taximaster.www' 1; + 'com.arobs.trackgps' 1; + 'com.helleniccomms.asteras.driver' 1; # '~[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}' 1; # Fake UA } @@ -130,13 +142,13 @@ map $osm_referer$http_user_agent $limit_http_pragma { # Find Browser User-Agents which are not sending a referer. # Browsers with no referer could be due to Browser extension or website Referrer-Policy -map $http_referer$scheme$http_user_agent $deny_missing_referer { +map $tile_cache$http_referer$scheme$http_user_agent $deny_missing_referer { default 0; # Not denied - '~^httpsMozilla\/5\.0\ \(X11' 1; - '~^httpsMozilla\/5\.0\ \(Windows' 1; - '~^httpsMozilla\/5\.0\ \(iPhone' 1; - '~^httpsMozilla\/5\.0\ \(Macintosh' 1; - '~^httpsMozilla\/5\.0\ \(Linux' 1; + '~^clienthttpsMozilla\/5\.0\ \(X11' 1; + '~^clienthttpsMozilla\/5\.0\ \(Windows' 1; + '~^clienthttpsMozilla\/5\.0\ \(iPhone' 1; + '~^clienthttpsMozilla\/5\.0\ \(Macintosh' 1; + '~^clienthttpsMozilla\/5\.0\ \(Linux' 1; } server {