1 # DO NOT EDIT - This file is being maintained by Chef
 
   2 <% [80, 443].each do |port| -%>
 
   4 <VirtualHost *:<%= port %>>
 
   6   # Basic server configuration
 
   8   ServerName <%= node[:fqdn] %>
 
   9   ServerAlias api.openstreetmap.org www.openstreetmap.org
 
  10   ServerAdmin webmaster@openstreetmap.org
 
  17   SSLCertificateFile /etc/ssl/certs/www.openstreetmap.org.pem
 
  18   SSLCertificateKeyFile /etc/ssl/private/www.openstreetmap.org.key
 
  24   LogFormat "%a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\" %Dus %{UNIQUE_ID}e %{SSL_PROTOCOL}x %{SSL_CIPHER}x" combined_with_time
 
  25   CustomLog /var/log/apache2/access.log combined_with_time
 
  26   ErrorLog /var/log/apache2/error.log
 
  29   # Turn on the rewrite engine
 
  34   # Recover the unique ID from the request headers
 
  36   SetEnvIf X-Request-Id ^(.*)$ UNIQUE_ID=$1
 
  41   DocumentRoot <%= node[:web][:base_directory] %>/rails/public
 
  43   PassengerMinInstances 3
 
  44   PassengerMaxRequests 500
 
  46   PassengerPreStart https://www.openstreetmap.org/
 
  48   PassengerPreStart http://www.openstreetmap.org/
 
  50   SetEnv SECRET_KEY_BASE <%= @secret_key_base %>
 
  53   # Get the real remote IP for requests via a trusted proxy
 
  55   RemoteIPHeader X-Forwarded-For
 
  56   RemoteIPTrustedProxy 146.179.159.160/27
 
  57   RemoteIPTrustedProxy 10.0.32.0/24
 
  60   # Pass authentication related headers to cgimap
 
  67   # Pass supported calls to cgimap
 
  69   RewriteRule ^/api/0\.6/map$ fcgi://127.0.0.1:8000$0 [P]
 
  70   RewriteCond %{REQUEST_METHOD} ^(HEAD|GET)$
 
  71   RewriteRule ^/api/0\.6/(node|way|relation|changeset)/[0-9]+$ fcgi://127.0.0.1:8000$0 [P]
 
  72   RewriteRule ^/api/0\.6/(node|way|relation)/[0-9]+/history$ fcgi://127.0.0.1:8000$0 [P]
 
  73   RewriteRule ^/api/0\.6/(way|relation)/[0-9]+/full$ fcgi://127.0.0.1:8000$0 [P]
 
  74   RewriteRule ^/api/0\.6/(nodes|ways|relations)$ fcgi://127.0.0.1:8000$0 [P]
 
  75   RewriteRule ^/api/0\.6/changeset/[0-9]+/download$ fcgi://127.0.0.1:8000$0 [P]
 
  79 <Directory <%= node[:web][:base_directory] %>/rails/public>