X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/9c3db8b15ab975e975cb31ca8bb388b79f6e5c8e..4e01b4b17f139ae35a9564bb0221ce0842b3b90f:/cookbooks/mediawiki/templates/default/apache.erb diff --git a/cookbooks/mediawiki/templates/default/apache.erb b/cookbooks/mediawiki/templates/default/apache.erb index 5c38fc0a2..dc3dc5eb0 100644 --- a/cookbooks/mediawiki/templates/default/apache.erb +++ b/cookbooks/mediawiki/templates/default/apache.erb @@ -11,7 +11,6 @@ CustomLog /var/log/apache2/<%= @name %>-access.log combined ErrorLog /var/log/apache2/<%= @name %>-error.log -<% if @ssl_enabled -%> RedirectPermanent /.well-known/acme-challenge/ http://acme.openstreetmap.org/.well-known/acme-challenge/ RedirectPermanent / https://<%= @name %>/ @@ -30,16 +29,12 @@ CustomLog /var/log/apache2/<%= @name %>-secure-access.log combined ErrorLog /var/log/apache2/<%= @name %>-secure-error.log -<% end -%> DocumentRoot <%= @directory %> - php_admin_value open_basedir <%= @directory %>/:/usr/share/php/:/tmp/ - #php_admin_value disable_functions "exec,shell_exec,system,passthru,popen,proc_open" - php_value memory_limit 128M - php_value max_execution_time 240 - php_value upload_max_filesize 70M - php_value post_max_size 100M + AllowEncodedSlashes NoDecode + + ProxyTimeout 300 RewriteCond %{SERVER_NAME} !=<%= @name %> RewriteRule ^/(.*)$ https://<%= @name %>/$1 [R=permanent] @@ -54,6 +49,26 @@ RedirectMatch 301 ^/api\.php$ /w/api.php RedirectMatch 301 ^/opensearch_desc\.php$ /w/opensearch_desc.php + #Support Wikidata redirects based on Wikimedia's redirects: + # https://github.com/wikimedia/puppet/blob/production/modules/mediawiki/files/apache/sites/wikidata-uris.incl + RedirectMatch 301 ^/entity/statement/([QqPp]\d+).*$ /wiki/Special:EntityData/$1 + RedirectMatch 301 ^/value/(.*)$ /wiki/Special:ListDatatypes + RedirectMatch 301 ^/reference/(.*)$ https://wikidata.org/wiki/Help:Sources + RedirectMatch 301 ^/prop/direct/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/direct-normalized/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/novalue/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/statement/value/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/statement/value-normalized/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/qualifier/value/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/qualifier/value-normalized/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/reference/value/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/reference/value-normalized/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/statement/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/qualifier/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/reference/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/prop/(.*)$ /wiki/Property:$1 + RedirectMatch 301 ^/entity/(.*)$ /wiki/Special:EntityData/$1 + Alias /wiki <%= @directory %>/w/index.php #Support /pagename -> /wiki/pagename @@ -65,6 +80,11 @@ RewriteCond %{REQUEST_URI} !^/images/ RewriteCond %{REQUEST_URI} !^/api\.php$ RewriteCond %{REQUEST_URI} !^/opensearch_desc\.php$ + RewriteCond %{REQUEST_URI} !^/entity/ + RewriteCond %{REQUEST_URI} !^/value/ + RewriteCond %{REQUEST_URI} !^/reference/ + RewriteCond %{REQUEST_URI} !^/prop/ + RewriteCond %{REQUEST_URI} !^/dump/ RewriteCond %{REQUEST_URI} !^/server-status RewriteCond %{REQUEST_URI} !^/.well-known/ RewriteCond %{LA-U:REQUEST_FILENAME} !-f @@ -74,17 +94,22 @@ > Options -Indexes Require all granted + + + SetHandler "proxy:unix:/run/php/<%= @name %>.sock|fcgi://127.0.0.1" + /w/images/> - # No php execution in the upload area - php_admin_flag engine off Options -ExecCGI -Includes -Indexes AllowOverride None AddType text/plain .html .htm .shtml -<% if @private -%> +<% if @private_site -%> Require all denied <% end -%> + + SetHandler None + /w/images/thumb/> @@ -119,7 +144,17 @@ Options -ExecCGI -Includes -Indexes AllowOverride None AddType text/plain .html .htm .shtml - php_admin_flag engine off + + SetHandler None + + + + /dump/> + Options Indexes FollowSymLinks MultiViews + AllowOverride All + IndexIgnore .ht* . robots.txt HEADER.html HEADER.cgi logo.png style.css + IndexOptions FancyIndexing FoldersFirst NameWidth=* TrackModified + IndexOrderDefault Descending Date