Use the right PreStart URL for the https virtual server
[chef.git] / cookbooks / web / templates / default / apache.backend.erb
1 # DO NOT EDIT - This file is being maintained by Chef
2 <% [80, 443].each do |port| -%>
3
4 <VirtualHost *:<%= port %>>
5   #
6   # Basic server configuration
7   #
8   ServerName <%= node[:fqdn] %>
9   ServerAlias api.openstreetmap.org www.openstreetmap.org
10   ServerAdmin webmaster@openstreetmap.org
11 <% if port == 443 -%>
12
13   #
14   # Enable SSL
15   #
16   SSLEngine on
17 <% end -%>
18
19   #
20   # Setup logging
21   #
22   LogFormat "%a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\" %Ts" combined_with_time
23   CustomLog /var/log/apache2/access.log combined_with_time
24   ErrorLog /var/log/apache2/error.log
25
26   #
27   # Turn on the rewrite engine
28   #
29   RewriteEngine on
30
31   #
32   # Configure rails
33   #
34   DocumentRoot <%= node[:web][:base_directory] %>/rails/public
35   RailsEnv production
36   PassengerMinInstances 3
37   PassengerMaxRequests 500
38 <% if port == 443 -%>
39   PassengerPreStart https://www.openstreetmap.org/
40 <% else -%>
41   PassengerPreStart http://www.openstreetmap.org/
42 <% end -%>
43   SetEnv SECRET_KEY_BASE <%= @secret_key_base %>
44
45   #
46   # Get the real remote IP for requests via a trusted proxy
47   #
48   RemoteIPHeader X-Forwarded-For
49   RemoteIPTrustedProxy 146.179.159.160/27
50
51   #
52   # Pass supported calls to cgimap
53   #
54   RewriteRule ^/api/0\.6/map$ fcgi://127.0.0.1:8000$0 [P]
55   RewriteCond %{REQUEST_METHOD} ^(HEAD|GET)$
56   RewriteRule ^/api/0\.6/(node|way|relation)/[0-9]+$ fcgi://127.0.0.1:8000$0 [P]
57   RewriteRule ^/api/0\.6/(way|relation)/[0-9]+/full$ fcgi://127.0.0.1:8000$0 [P]
58   RewriteRule ^/api/0\.6/(nodes|ways|relations)$ fcgi://127.0.0.1:8000$0 [P]
59 </VirtualHost>
60 <% end -%>
61
62 <Directory <%= node[:web][:base_directory] %>/rails/public>
63   Require all granted
64 </Directory>