]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/web/templates/default/apache.frontend.erb
Revert "Switch to emergency frontend only setup"
[chef.git] / cookbooks / web / templates / default / apache.frontend.erb
index ebe5721a46e6883ddd1370090ae8890264e0cd80..ef06eeb83de93bb64afa1e9bc16d07789e0606d0 100644 (file)
@@ -14,6 +14,7 @@
   # Enable SSL
   #
   SSLEngine on
   # Enable SSL
   #
   SSLEngine on
+  SSLProxyEngine on
 <% end -%>
 
   #
 <% end -%>
 
   #
   PassengerMinInstances 10
   PassengerMaxRequests 5000
   PassengerPreStart http://www.openstreetmap.org/
   PassengerMinInstances 10
   PassengerMaxRequests 5000
   PassengerPreStart http://www.openstreetmap.org/
+  SetEnv SECRET_KEY_BASE <%= @secret_key_base %>
   Alias /favicon.ico <%= node[:web][:base_directory] %>/rails/app/assets/images/favicon.ico
   Alias /openlayers <%= node[:web][:base_directory] %>/rails/vendor/assets/openlayers
   Alias /stats /store/rails/stats
   Alias /favicon.ico <%= node[:web][:base_directory] %>/rails/app/assets/images/favicon.ico
   Alias /openlayers <%= node[:web][:base_directory] %>/rails/vendor/assets/openlayers
   Alias /stats /store/rails/stats
   #
   <Proxy balancer://backend>
     ProxySet lbmethod=bybusyness
   #
   <Proxy balancer://backend>
     ProxySet lbmethod=bybusyness
+<% if port == 443 -%>
+    BalancerMember https://rails1 disablereuse=on
+    BalancerMember https://rails2 disablereuse=on
+    BalancerMember https://rails3 disablereuse=on
+<% else -%>
     BalancerMember http://rails1
     BalancerMember http://rails2
     BalancerMember http://rails3
     BalancerMember http://rails1
     BalancerMember http://rails2
     BalancerMember http://rails3
+<% end -%>
   </Proxy>
 <% if port == 80 -%>
 
   #
   </Proxy>
 <% if port == 80 -%>
 
   #
-  # Redirect requests which should be secure to the SSL site
+  # Redirect requests which should be secure to https
   #
   RewriteCond %{REQUEST_URI} ^/login(\.html)?$ [OR]
   RewriteCond %{REQUEST_URI} ^/user/(new|create-account\.html)$ [OR]
   #
   RewriteCond %{REQUEST_URI} ^/login(\.html)?$ [OR]
   RewriteCond %{REQUEST_URI} ^/user/(new|create-account\.html)$ [OR]
 <% elsif port == 443 -%>
 
   #
 <% elsif port == 443 -%>
 
   #
-  # Redirect api requests to api.osm.org over http
+  # Redirect api requests made to www.osm.org to api.osm.org
   #
   #
-  RewriteRule ^/api/(.*)$ http://api.openstreetmap.org/api/$1 [L,NE,R=permanent]
+#  RewriteCond %{HTTP_HOST} =www.openstreetmap.org
+#  RewriteRule ^/api/(.*)$ https://api.openstreetmap.org/api/$1 [L,NE,R=permanent]
 
   #
 
   #
-  # Redirect requests which do not need to be secure over http
+  # Redirect non-api requests made to api.osm.org to www.osm.org
   #
   #
-  RewriteCond %{REQUEST_URI} !^/login(.html)?$
-  RewriteCond %{REQUEST_URI} !^/user/(new|create-account.html)$
-  RewriteCond %{REQUEST_URI} !^/user/terms$
-  RewriteCond %{REQUEST_URI} !^/user/save$
-  RewriteCond %{REQUEST_URI} !^/user/go_public$
-  RewriteCond %{REQUEST_URI} !^/user/([^/]+)/account$
-  RewriteCond %{REQUEST_URI} !^/user/reset-password$
-  RewriteCond %{REQUEST_URI} !^/preview/
-  RewriteCond %{REQUEST_URI} !^/assets/
-  RewriteCond %{REQUEST_URI} !^/javascripts/
-  RewriteCond %{REQUEST_URI} !^/images/
-  RewriteCond %{REQUEST_URI} !^/stylesheets/
-  RewriteCond %{REQUEST_URI} !^/openlayers/
-  RewriteRule ^(.*)$ http://www.openstreetmap.org$1 [L,NE,R=permanent]
+  RewriteCond %{HTTP_HOST} =api.openstreetmap.org
+  RewriteCond %{REQUEST_URI} !^/api/
+  RewriteRule ^(.*)$ https://www.openstreetmap.org$1 [L,NE,R=permanent]
 <% end -%>
 </VirtualHost>
 
 <% end -%>
 </VirtualHost>
 
   ServerAlias maps.openstreetmap.com mapz.openstreetmap.com
   ServerAlias openstreetmap.net www.openstreetmap.net
   ServerAlias maps.openstreetmap.net mapz.openstreetmap.net
   ServerAlias maps.openstreetmap.com mapz.openstreetmap.com
   ServerAlias openstreetmap.net www.openstreetmap.net
   ServerAlias maps.openstreetmap.net mapz.openstreetmap.net
+  ServerAlias openstreetmap.ca www.openstreetmap.ca
+  ServerAlias maps.openstreetmap.ca mapz.openstreetmap.ca
+  ServerAlias openstreetmap.eu www.openstreetmap.eu
+  ServerAlias maps.openstreetmap.eu mapz.openstreetmap.eu
+  ServerAlias openstreetmap.pro www.openstreetmap.pro
+  ServerAlias maps.openstreetmap.pro mapz.openstreetmap.pro
   ServerAlias openstreetmaps.org www.openstreetmaps.org
   ServerAlias maps.openstreetmaps.org mapz.openstreetmaps.org
   ServerAlias osm.org www.osm.org
   ServerAlias maps.osm.org mapz.osm.org
   ServerAlias openmaps.org www.openmaps.org
   ServerAlias maps.openmaps.org mapz.openmaps.org
   ServerAlias openstreetmaps.org www.openstreetmaps.org
   ServerAlias maps.openstreetmaps.org mapz.openstreetmaps.org
   ServerAlias osm.org www.osm.org
   ServerAlias maps.osm.org mapz.osm.org
   ServerAlias openmaps.org www.openmaps.org
   ServerAlias maps.openmaps.org mapz.openmaps.org
+  ServerAlias openstreetmap.io www.openstreetmap.io
+  ServerAlias maps.openstreetmap.io mapz.openstreetmap.io
+  ServerAlias osm.io www.osm.io
+  ServerAlias maps.osm.io mapz.osm.io
   ServerAlias openworldmap.org www.openworldmap.org
   ServerAlias maps.openworldmap.org mapz.openworldmap.org
   ServerAlias freeosm.org www.freeosm.org
   ServerAlias maps.freeosm.org mapz.freeosm.org
   ServerAlias openworldmap.org www.openworldmap.org
   ServerAlias maps.openworldmap.org mapz.openworldmap.org
   ServerAlias freeosm.org www.freeosm.org
   ServerAlias maps.freeosm.org mapz.freeosm.org
+  ServerAlias open-maps.org www.open-maps.org
+  ServerAlias maps.open-maps.org mapz.open-maps.org
+  ServerAlias open-maps.com www.open-maps.com
+  ServerAlias maps.open-maps.com mapz.open-maps.com
+  ServerAlias osmbugs.org www.osmbugs.org
+  ServerAlias maps.osmbugs.org mapz.osmbugs.org
+
+  #Third Party Sites
+  ServerAlias openstreetmap.pm www.openstreetmap.pm
 
   RedirectPermanent / http://www.openstreetmap.org/
 </VirtualHost>
 
 
   RedirectPermanent / http://www.openstreetmap.org/
 </VirtualHost>
 
+<VirtualHost *:443>
+  ServerName openstreetmap.org
+  ServerAlias maps.openstreetmap.org mapz.openstreetmap.org
+
+  SSLEngine on
+
+  RedirectPermanent / https://www.openstreetmap.org/
+</VirtualHost>
+
 <VirtualHost *:80>
   ServerName openstreetmap.org.uk
   ServerAlias www.openstreetmap.org.uk
 <VirtualHost *:80>
   ServerName openstreetmap.org.uk
   ServerAlias www.openstreetmap.org.uk
   RedirectPermanent /events.ics http://calendar.openstreetmap.org.uk/events.ics
   RedirectPermanent / http://www.openstreetmap.org/
 </VirtualHost>
   RedirectPermanent /events.ics http://calendar.openstreetmap.org.uk/events.ics
   RedirectPermanent / http://www.openstreetmap.org/
 </VirtualHost>
+
+<Directory <%= node[:web][:base_directory] %>/rails/public>
+  Require all granted
+</Directory>
+
+<Directory /srv/www.openstreetmap.org/rails/app/assets>
+  Require all granted
+</Directory>
+
+<Directory /srv/www.openstreetmap.org/rails/vendor/assets>
+  Require all granted
+</Directory>
+
+<Directory /store/rails/stats>
+  Require all granted
+</Directory>
+
+<Directory /store/rails/user/image>
+  Require all granted
+</Directory>
+
+<Directory /store/rails/attachments>
+  Require all granted
+</Directory>