X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/9c3db8b15ab975e975cb31ca8bb388b79f6e5c8e..45c0862be818c87ac9825ed36a7a2e9d3a1aab7c:/cookbooks/mediawiki/templates/default/apache.erb
diff --git a/cookbooks/mediawiki/templates/default/apache.erb b/cookbooks/mediawiki/templates/default/apache.erb
index 5c38fc0a2..fd23a5341 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/php-<%= @name %>-fpm.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