Fix nginx cache zone in imagery
[chef.git] / cookbooks / imagery / templates / default / nginx_imagery_layer_fragment.conf.erb
index f5d687f68708e1f22909635acb34b21df3ab2aac..94bfde79712a203f942d25314853900c0965db8f 100644 (file)
@@ -1,8 +1,19 @@
 # DO NOT EDIT - This file is being maintained by Chef
 
-location ~* "^/layer/<%= @name %>/(\d+)/(\d+)/(\d+)\.(png|jpg|jpeg)$" {
-  fastcgi_param  QUERY_STRING "map=/srv/imagery/<%= @name %>.map&mode=tile&layers=<%= @name %>&tilemode=gmap&tile=$2+$3+$1";
-  fastcgi_pass "unix:/var/run/mapserver-fastcgi/layer-<%= @name %>.socket";
+location ~* "^/layer/<%= @layer %>/(\d+)/(\d+)/(\d+)\.(png|jpg|jpeg)$" {
+  # Override QUERY_STRING to force mapserver query parameters
+  fastcgi_param QUERY_STRING "map=/srv/imagery/mapserver/layer-<%= @layer %>.map&mode=tile&layers=<%= @layer %>&tilemode=gmap&tile=$2+$3+$1";
+  fastcgi_pass "unix:/var/run/mapserver-fastcgi/layer-<%= @layer %>.socket";
+  fastcgi_buffers 8 64k;
+  fastcgi_cache "fastcgi_cache_zone";
   include fastcgi_params;
+
   gzip off;
 }
+
+<% if @root_layer -%>
+rewrite "^/(\d+)/(\d+)/(\d+)\.(png|jpg|jpeg)$" "/layer/<%= @layer %>/$1/$2/$3.$4" last;
+<% end -%>
+<% @url_aliases.each do |url| -%>
+rewrite "^<%= url %>/(\d+)/(\d+)/(\d+)\.(png|jpg|jpeg)$" "/layer/<%= @layer %>/$1/$2/$3.$4" last;
+<% end -%>