X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/8209e87edee03d527bd5de45ecd80be400435eac..8ccf941a82940d016e9c68bdf0c29e190953c7f7:/cookbooks/web/templates/default/apache.backend.erb?ds=inline diff --git a/cookbooks/web/templates/default/apache.backend.erb b/cookbooks/web/templates/default/apache.backend.erb index 0bd6829a1..93867a96a 100644 --- a/cookbooks/web/templates/default/apache.backend.erb +++ b/cookbooks/web/templates/default/apache.backend.erb @@ -1,6 +1,6 @@ # DO NOT EDIT - This file is being maintained by Chef - + # # Basic server configuration # @@ -8,10 +8,17 @@ ServerAlias api.openstreetmap.org www.openstreetmap.org ServerAdmin webmaster@openstreetmap.org + # + # Enable SSL + # + SSLEngine on + SSLCertificateFile /etc/ssl/certs/www.openstreetmap.org.pem + SSLCertificateKeyFile /etc/ssl/private/www.openstreetmap.org.key + # # Setup logging # - LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\" %Ts" combined_with_time + 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 CustomLog /var/log/apache2/access.log combined_with_time ErrorLog /var/log/apache2/error.log @@ -20,6 +27,11 @@ # RewriteEngine on + # + # Recover the unique ID from the request headers + # + SetEnvIf X-Request-Id ^(.*)$ UNIQUE_ID=$1 + # # Configure rails # @@ -27,20 +39,39 @@ RailsEnv production PassengerMinInstances 3 PassengerMaxRequests 500 - PassengerPreStart http://www.openstreetmap.org/ + PassengerPreStart https://www.openstreetmap.org/ + PassengerAppGroupName rails + SetEnv OPENSTREETMAP_STATUS <%= @status %> + SetEnv SECRET_KEY_BASE <%= @secret_key_base %> # # Get the real remote IP for requests via a trusted proxy # RemoteIPHeader X-Forwarded-For - RemoteIPTrustedProxy 146.179.159.160/27 + RemoteIPTrustedProxy 10.0.32.0/24 + RemoteIPTrustedProxy 10.0.48.0/24 + + # + # Pass authentication related headers to cgimap + # + + CGIPassAuth On + # # Pass supported calls to cgimap # - RewriteRule ^/api/0\.6/map$ - [H=fcgi:127.0.0.1:8000] - RewriteCond %{REQUEST_METHOD} =GET - RewriteRule ^/api/0\.6/(node|way|relation)/[0-9]+$ - [H=fcgi:127.0.0.1:8000] - RewriteRule ^/api/0\.6/(way|relation)/[0-9]+/full$ - [H=fcgi:127.0.0.1:8000] - RewriteRule ^/api/0\.6/(nodes|ways|relations)$ - [H=fcgi:127.0.0.1:8000] + RewriteRule ^/api/0\.6/map(\.json|\.xml)?$ fcgi://127.0.0.1:8000$0 [P] + RewriteCond %{REQUEST_METHOD} ^(HEAD|GET)$ + RewriteRule ^/api/0\.6/(node|way|relation|changeset)/[0-9]+(\.json|\.xml)?$ fcgi://127.0.0.1:8000$0 [P] + RewriteRule ^/api/0\.6/(node|way|relation)/[0-9]+/history(\.json|\.xml)?$ fcgi://127.0.0.1:8000$0 [P] + RewriteRule ^/api/0\.6/(node|way|relation)/[0-9]+/relations(\.json|\.xml)?$ fcgi://127.0.0.1:8000$0 [P] + RewriteRule ^/api/0\.6/node/[0-9]+/ways(\.json|\.xml)?$ fcgi://127.0.0.1:8000$0 [P] + RewriteRule ^/api/0\.6/(way|relation)/[0-9]+/full(\.json|\.xml)?$ fcgi://127.0.0.1:8000$0 [P] + RewriteRule ^/api/0\.6/(nodes|ways|relations)(\.json|\.xml)?$ fcgi://127.0.0.1:8000$0 [P] + RewriteRule ^/api/0\.6/changeset/[0-9]+/(upload|download)(\.json|\.xml)?$ fcgi://127.0.0.1:8000$0 [P] + +/rails/public> + Require all granted +