1 # DO NOT EDIT - This file is being maintained by Chef
 
   4   ServerName <%= @name %>
 
   5 <% @aliases.each do |alias_name| -%>
 
   6   ServerAlias <%= alias_name %>
 
   9   ServerAdmin webmaster@openstreetmap.org
 
  11   CustomLog /var/log/apache2/<%= @name %>-access.log combined
 
  12   ErrorLog /var/log/apache2/<%= @name %>-error.log
 
  14   RedirectPermanent /.well-known/acme-challenge/ http://acme.openstreetmap.org/.well-known/acme-challenge/
 
  15   RedirectPermanent / https://<%= @name %>/
 
  19   ServerName <%= @name %>
 
  20 <% @aliases.each do |alias_name| -%>
 
  21   ServerAlias <%= alias_name %>
 
  24   ServerAdmin webmaster@openstreetmap.org
 
  27   SSLCertificateFile /etc/ssl/certs/<%= @name %>.pem
 
  28   SSLCertificateKeyFile /etc/ssl/private/<%= @name %>.key
 
  30   CustomLog /var/log/apache2/<%= @name %>-secure-access.log combined
 
  31   ErrorLog /var/log/apache2/<%= @name %>-secure-error.log
 
  33   DocumentRoot <%= @directory %>
 
  35   php_admin_value open_basedir <%= @directory %>/:/usr/share/php/:/dev/null:/tmp/
 
  36   #php_admin_value disable_functions "exec,shell_exec,system,passthru,popen,proc_open"
 
  37   php_value memory_limit 500M
 
  38   php_value max_execution_time 240
 
  39   php_value upload_max_filesize 70M
 
  40   php_value post_max_size 100M
 
  42   RewriteCond %{SERVER_NAME} !=<%= @name %>
 
  43   RewriteRule ^/(.*)$ https://<%= @name %>/$1 [R=permanent]
 
  45   RedirectMatch 301 ^/$                           /wiki/Main_Page
 
  47   #Historical Compatibility Links
 
  48   RedirectMatch 301 ^/index\.php$                 /w/index.php
 
  49   RedirectMatch 301 ^/index\.php/(.*)$            /wiki/$1
 
  50   RedirectMatch 301 ^/skins/(.*)$                 /w/skins/$1
 
  51   RedirectMatch 301 ^/images/(.*)$                /w/images/$1
 
  52   RedirectMatch 301 ^/api\.php$                   /w/api.php
 
  53   RedirectMatch 301 ^/opensearch_desc\.php$       /w/opensearch_desc.php
 
  55   #Support Wikidata redirects based on Wikimedia's redirects:
 
  56   # https://github.com/wikimedia/puppet/blob/production/modules/mediawiki/files/apache/sites/wikidata-uris.incl
 
  57   RedirectMatch 301 ^/entity/statement/([QqPp]\d+).*$        /wiki/Special:EntityData/$1
 
  58   RedirectMatch 301 ^/value/(.*)$                            /wiki/Special:ListDatatypes
 
  59   RedirectMatch 301 ^/reference/(.*)$                        https://wikidata.org/wiki/Help:Sources
 
  60   RedirectMatch 301 ^/prop/direct/(.*)$                      /wiki/Property:$1
 
  61   RedirectMatch 301 ^/prop/direct-normalized/(.*)$           /wiki/Property:$1
 
  62   RedirectMatch 301 ^/prop/novalue/(.*)$                     /wiki/Property:$1
 
  63   RedirectMatch 301 ^/prop/statement/value/(.*)$             /wiki/Property:$1
 
  64   RedirectMatch 301 ^/prop/statement/value-normalized/(.*)$  /wiki/Property:$1
 
  65   RedirectMatch 301 ^/prop/qualifier/value/(.*)$             /wiki/Property:$1
 
  66   RedirectMatch 301 ^/prop/qualifier/value-normalized/(.*)$  /wiki/Property:$1
 
  67   RedirectMatch 301 ^/prop/reference/value/(.*)$             /wiki/Property:$1
 
  68   RedirectMatch 301 ^/prop/reference/value-normalized/(.*)$  /wiki/Property:$1
 
  69   RedirectMatch 301 ^/prop/statement/(.*)$                   /wiki/Property:$1
 
  70   RedirectMatch 301 ^/prop/qualifier/(.*)$                   /wiki/Property:$1
 
  71   RedirectMatch 301 ^/prop/reference/(.*)$                   /wiki/Property:$1
 
  72   RedirectMatch 301 ^/prop/(.*)$                             /wiki/Property:$1
 
  73   RedirectMatch 301 ^/entity/(.*)$                           /wiki/Special:EntityData/$1
 
  75   Alias /wiki <%= @directory %>/w/index.php
 
  77   #Support /pagename -> /wiki/pagename
 
  79   RewriteCond %{REQUEST_URI} !^/w/
 
  80   RewriteCond %{REQUEST_URI} !^/wiki/
 
  81   RewriteCond %{REQUEST_URI} !^/index\.php
 
  82   RewriteCond %{REQUEST_URI} !^/skins/
 
  83   RewriteCond %{REQUEST_URI} !^/images/
 
  84   RewriteCond %{REQUEST_URI} !^/api\.php$
 
  85   RewriteCond %{REQUEST_URI} !^/opensearch_desc\.php$
 
  86   RewriteCond %{REQUEST_URI} !^/entity/
 
  87   RewriteCond %{REQUEST_URI} !^/value/
 
  88   RewriteCond %{REQUEST_URI} !^/reference/
 
  89   RewriteCond %{REQUEST_URI} !^/prop/  
 
  90   RewriteCond %{REQUEST_URI} !^/dump/  
 
  91   RewriteCond %{REQUEST_URI} !^/server-status
 
  92   RewriteCond %{REQUEST_URI} !^/.well-known/
 
  93   RewriteCond %{LA-U:REQUEST_FILENAME} !-f
 
  94   RewriteCond %{LA-U:REQUEST_FILENAME} !-d
 
  95   RewriteRule ^/(.*) /wiki/$1 [R,L]
 
  97   <Directory <%= @directory %>>
 
 102   <Directory <%= @directory %>/w/images/>
 
 103     # No php execution in the upload area
 
 104     php_admin_flag engine off
 
 105     Options -ExecCGI -Includes -Indexes
 
 107     AddType text/plain .html .htm .shtml
 
 108 <% if @private_site -%>
 
 113   <Directory <%= @directory %>/w/images/thumb/>
 
 116     RewriteCond %{REQUEST_FILENAME} !-f
 
 117     RewriteCond %{REQUEST_FILENAME} !-d
 
 118     RewriteRule ^[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/page([0-9]+)-([0-9]+)px-.*$ /w/thumb.php?f=$1&page=$2&width=$3 [L,QSA,B]
 
 120     RewriteCond %{REQUEST_FILENAME} !-f
 
 121     RewriteCond %{REQUEST_FILENAME} !-d
 
 122     RewriteRule ^archive/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/page([0-9]+)-([0-9]+)px-.*$ /w/thumb.php?f=$1&page=$2&width=$3&archived=1 [L,QSA,B]
 
 124     RewriteCond %{REQUEST_FILENAME} !-f
 
 125     RewriteCond %{REQUEST_FILENAME} !-d
 
 126     RewriteRule ^[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ /w/thumb.php?f=$1&width=$2 [L,QSA,B]
 
 128     RewriteCond %{REQUEST_FILENAME} !-f
 
 129     RewriteCond %{REQUEST_FILENAME} !-d
 
 130     RewriteRule ^archive/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ /w/thumb.php?f=$1&width=$2&archived=1 [L,QSA,B]
 
 133   <Directory <%= @directory %>/w/maintenance/>
 
 137   <Files <%= @directory %>/w/LocalSettings.php>
 
 141   <Directory <%= @directory %>/w/cache/>
 
 142     Options -ExecCGI -Includes -Indexes
 
 144     AddType text/plain .html .htm .shtml
 
 145     php_admin_flag engine off
 
 148   <Directory <%= @directory %>/dump/>
 
 149     Options Indexes FollowSymLinks MultiViews
 
 151     IndexIgnore .ht* . robots.txt HEADER.html HEADER.cgi logo.png style.css
 
 152     IndexOptions FancyIndexing FoldersFirst NameWidth=* TrackModified
 
 153     IndexOrderDefault Descending Date
 
 156   <Directory ~ "\.svn">
 
 160   <Directory ~ "\.git">