]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/dev/templates/default/apache.rails.erb
Send changeset uploads to cgimap for dev apis
[chef.git] / cookbooks / dev / templates / default / apache.rails.erb
index 7d45abe214ac1d3909b4f49bd478286b270d27c4..ab9cffbad0be23cb3d3d08803312b0aa07552a43 100644 (file)
@@ -1,16 +1,79 @@
 # DO NOT EDIT - This file is being maintained by Chef
 
+<VirtualHost *:443>
+        ServerName <%= @name %>
+<% @aliases.each do |alias_name| -%>
+        ServerAlias <%= alias_name %>
+<% end -%>
+        ServerAdmin webmaster@openstreetmap.org
+
+        SSLEngine on
+        SSLCertificateFile /etc/ssl/certs/<%= @name %>.pem
+        SSLCertificateKeyFile /etc/ssl/private/<%= @name %>.key
+
+        CustomLog /var/log/apache2/<%= @name %>-access.log combined
+        ErrorLog /var/log/apache2/<%= @name %>-error.log
+
+        DocumentRoot /srv/<%= @name %>/rails/public
+
+        RailsEnv production
+        PassengerAppGroupName <%= @application_name %>
+
+        SetEnv SECRET_KEY_BASE <%= @secret_key_base %>
+
+        # Ensure robots do not index dev site
+        # https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag
+        Header set X-Robots-Tag "noindex, nofollow"
+
+        # Force special MIME type for crossdomain.xml files
+        <Files crossdomain.xml>
+                ForceType text/x-cross-domain-policy
+        </Files>
+<% if @cgimap_enabled -%>
+
+        # Pass authentication related headers to cgimap
+        <Location />
+                CGIPassAuth On
+        </Location>
+
+        # Pass supported calls to cgimap
+        RewriteEngine on
+        RewriteRule ^/api/0\.6/map$ fcgi://127.0.0.1:<%= @cgimap_port %>$0 [P]
+        RewriteCond %{REQUEST_METHOD} ^(HEAD|GET)$
+        RewriteRule ^/api/0\.6/(node|way|relation|changeset)/[0-9]+$ fcgi://127.0.0.1:<%= @cgimap_port %>$0 [P]
+        RewriteRule ^/api/0\.6/(node|way|relation)/[0-9]+/history$ fcgi://127.0.0.1:<%= @cgimap_port %>$0 [P]
+        RewriteRule ^/api/0\.6/(way|relation)/[0-9]+/full$ fcgi://127.0.0.1:<%= @cgimap_port %>$0 [P]
+        RewriteRule ^/api/0\.6/(nodes|ways|relations)$ fcgi://127.0.0.1:<%= @cgimap_port %>$0 [P]
+        RewriteRule ^/api/0\.6/changeset/[0-9]+/(upload|download)$ fcgi://127.0.0.1:<%= @cgimap_port %>$0 [P]
+<% end -%>
+</VirtualHost>
+
 <VirtualHost *:80>
-       ServerName <%= @name %>
+        ServerName <%= @name %>
 <% @aliases.each do |alias_name| -%>
-       ServerAlias <%= alias_name %>
+        ServerAlias <%= alias_name %>
 <% end -%>
-       ServerAdmin webmaster@openstreetmap.org
+        ServerAdmin webmaster@openstreetmap.org
 
-       DocumentRoot /srv/<%= @name %>/public
+        CustomLog /var/log/apache2/<%= @name %>-access.log combined
+        ErrorLog /var/log/apache2/<%= @name %>-error.log
 
-       CustomLog /var/log/apache2/<%= @name %>-access.log combined
-       ErrorLog /var/log/apache2/<%= @name %>-error.log
+        RedirectPermanent /.well-known/acme-challenge/ http://acme.openstreetmap.org/.well-known/acme-challenge/
+        RedirectPermanent / https://<%= @name %>/
 
-       RailsEnv production
+        # Ensure robots do not index dev site
+        # https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag
+        Header set X-Robots-Tag "noindex, nofollow"
 </VirtualHost>
+
+<Directory /srv/<%= @name %>/rails/public>
+        Require all granted
+</Directory>
+
+<Directory /srv/<%= @name %>/rails/app/assets>
+        Require all granted
+</Directory>
+
+<Directory /srv/<%= @name %>/rails/vendor/assets>
+        Require all granted
+</Directory>