acl osmtile_sites dstdomain a.tile.openstreetmap.org b.tile.openstreetmap.org c.tile.openstreetmap.org tile.openstreetmap.org a.tile.osm.org b.tile.osm.org c.tile.osm.org tile.osm.org
acl osmtiles_png urlpath_regex .png$
+acl osmtileScrapers browser ^$
+acl osmtileScrapers browser ^MOBAC
+acl osmtileScrapers browser ^JTileDownloader
+acl osmtileScrapers browser ^Apache\-HttpClient
+acl osmtileScrapers browser ^Opera\/10\.00
+acl osmtileScrapers browser ^shipxy01
+acl osmtileScrapers browser ^OsmAnd
+acl osmtileScrapers browser ^apemap
+acl osmtileScrapers browser Firefox\/2\.0\.0\.11
+acl osmtileScrapers browser Firefox\/3\.5\.7
+acl osmtileScrapers browser Firefox\/3\.6
+acl osmtileScrapers browser ^User-Agent
+http_access deny osmtile_sites osmtileScrapers
+
+acl whitelist_path urlpath_regex ^/cgi-bin/(export|debug)$
+acl blacklist_path urlpath_regex ^/cgi-bin/
+acl blacklist_path urlpath_regex ^/MyAdmin/
+acl blacklist_path urlpath_regex ^/myadmin/
+acl blacklist_path urlpath_regex ^/pma/
+acl blacklist_path urlpath_regex ^/phpmyadmin/
+acl blacklist_path urlpath_regex ^/phpMyAdmin/
+acl blacklist_path urlpath_regex ^/idssvc/
+acl blacklist_path urlpath_regex ^/iesvc/
+acl blacklist_path urlpath_regex ^/invoker/
+acl blacklist_path urlpath_regex ^/jmx-console/
+acl blacklist_path urlpath_regex ^/manager/
+acl blacklist_path urlpath_regex ^/service/
+acl blacklist_path urlpath_regex ^/web-console/
+acl blacklist_path urlpath_regex ^/wstats/
+acl blacklist_path urlpath_regex ^/zecmd/
+
+http_access allow osmtile_sites whitelist_path
+http_access deny blacklist_path
+
http_access allow osmtile_sites
acl osmtile_nocache_url urlpath_regex \.png/(status|dirty)$
cache deny osmtile_sites osmtile_nocache_url
-cache_peer <%= node[:tilecache][:tile_parent] %> parent 80 0 no-query originserver name=osmtileAccel login=PASS connect-timeout=90 no-digest
-cache_peer yevaud.openstreetmap.org parent 80 0 no-query originserver name=osmtileFileAccel login=PASS connect-timeout=90 no-delay no-digest max-conn=30
-
-cache_peer_access osmtileAccel allow osmtile_sites osmtiles_png
-cache_peer_access osmtileAccel deny all
+<% node[:tilecache][:tile_siblings].each do |sibling| -%>
+cache_peer <%= sibling %> sibling 3128 3130 weight=1500
+<% end -%>
+#Primary Parent
+cache_peer <%= node[:tilecache][:tile_parent] %> parent 80 0 no-query originserver name=osmtileAccel login=PASS connect-timeout=60 no-digest weight=1000
+cache_peer_access osmtileAccel allow osmtile_sites
-cache_peer_access osmtileFileAccel allow osmtile_sites !osmtiles_png
-cache_peer_access osmtileFileAccel deny all
+#Backup Parents
+<% @renders.each do |renders| -%>
+cache_peer <%= renders[:hostname] %>.render.openstreetmap.org parent 80 0 no-query originserver name=osmtileAccelBackup<%= renders[:hostname] %> login=PASS connect-timeout=60 no-digest weight=10
+cache_peer_access osmtileAccelBackup<%= renders[:hostname] %> allow osmtile_sites
+<% end -%>
#----------------------------------
#Create an unlimited pool for cache IP addresses
acl pool_unlimited src 127.0.0.1
<% @caches.each do |cache| -%>
-<% cache.ipaddresses(:family => :inet, :role => :external) do |address| -%>
+<% cache.ipaddresses(:family => :inet, :role => :external).sort.each do |address| -%>
acl pool_unlimited src <%= address %>
+acl tile_caches src <%= address %>
<% end -%>
<% end -%>
+#Allow tile_caches ICP access
+icp_access allow tile_caches
+
acl pool_000 src 0.0.0.0/7
acl pool_002 src 2.0.0.0/7
acl pool_004 src 4.0.0.0/7