From: Tom Hughes Date: Sun, 19 Apr 2015 16:32:44 +0000 (+0100) Subject: Eliminate duplication (and almost duplication!) in mediaiwiki config X-Git-Url: https://git.openstreetmap.org/chef.git/commitdiff_plain/663750c10bc7ac3d422b08055485be7819671086 Eliminate duplication (and almost duplication!) in mediaiwiki config --- diff --git a/cookbooks/mediawiki/providers/site.rb b/cookbooks/mediawiki/providers/site.rb index 1548da5c1..c17f871ca 100644 --- a/cookbooks/mediawiki/providers/site.rb +++ b/cookbooks/mediawiki/providers/site.rb @@ -400,13 +400,15 @@ action :create do backup false end + ports = new_resource.ssl_enabled ? [80, 443] : [80] + apache_site new_resource.name do cookbook "mediawiki" template "apache.erb" directory site_directory variables :aliases => Array(new_resource.aliases), :private => new_resource.private, - :ssl_enabled => new_resource.ssl_enabled, + :ports => ports, :ssl_certificate => new_resource.ssl_certificate, :ssl_certificate_chain => new_resource.ssl_certificate_chain reload_apache false diff --git a/cookbooks/mediawiki/templates/default/apache.erb b/cookbooks/mediawiki/templates/default/apache.erb index 16f97362d..0bedf2124 100644 --- a/cookbooks/mediawiki/templates/default/apache.erb +++ b/cookbooks/mediawiki/templates/default/apache.erb @@ -1,6 +1,7 @@ # DO NOT EDIT - This file is being maintained by Chef +<% @ports.each do |port| -%> - +> ServerName <%= @name %> <% @aliases.each do |alias_name| -%> ServerAlias <%= alias_name %> @@ -8,8 +9,15 @@ ServerAdmin webmaster@openstreetmap.org +<% if port == 443 -%> + SSLEngine on + + CustomLog /var/log/apache2/<%= @name %>-secure-access.log combined + ErrorLog /var/log/apache2/<%= @name %>-secure-error.log +<% else -%> CustomLog /var/log/apache2/<%= @name %>-access.log combined ErrorLog /var/log/apache2/<%= @name %>-error.log +<% end -%> DocumentRoot <%= @directory %> @@ -109,114 +117,4 @@ Require all denied -<% if @ssl_enabled -%> - - ServerName <%= @name %> -<% @aliases.each do |alias_name| -%> - ServerAlias <%= alias_name %> -<% end -%> - - ServerAdmin webmaster@openstreetmap.org - - SSLEngine on - - CustomLog /var/log/apache2/<%= @name %>-secure-access.log combined - ErrorLog /var/log/apache2/<%= @name %>-secure-error.log - - 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 - - RedirectMatch 301 ^/$ /wiki/Main_Page - - #Historical Compatibility Links - RedirectMatch 301 ^/index\.php$ /w/index.php - RedirectMatch 301 ^/index\.php/(.*)$ /wiki/$1 - RedirectMatch 301 ^/skins/(.*)$ /w/skins/$1 - RedirectMatch 301 ^/images/(.*)$ /w/images/$1 - RedirectMatch 301 ^/api\.php$ /w/api.php - RedirectMatch 301 ^/opensearch_desc\.php$ /w/opensearch_desc.php - - Alias /wiki <%= @directory %>/w/index.php - - #Support /pagename -> /wiki/pagename - RewriteEngine on - RewriteCond %{REQUEST_URI} !^/w/ - RewriteCond %{REQUEST_URI} !^/wiki/ - RewriteCond %{REQUEST_URI} !^/index\.php - RewriteCond %{REQUEST_URI} !^/skins/ - RewriteCond %{REQUEST_URI} !^/images/ - RewriteCond %{REQUEST_URI} !^/api\.php$ - RewriteCond %{REQUEST_URI} !^/opensearch_desc\.php$ - RewriteCond %{REQUEST_URI} !^/server-status - RewriteCond %{LA-U:REQUEST_FILENAME} !-f - RewriteCond %{LA-U:REQUEST_FILENAME} !-d - RewriteRule ^/(.*) /wiki/$1 [R,L] - - > - Options -Indexes - Require all granted - - - /w/images/> - # No php execution in the upload area - php_admin_flag engine off - Options -ExecCGI -Includes -Indexes - AllowOverride None -<% if @private -%> - Require all denied -<% end -%> - - - /w/images/thumb/> - RewriteEngine on - - RewriteCond %{REQUEST_FILENAME} !-f - RewriteCond %{REQUEST_FILENAME} !-d - RewriteRule ^[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ /w/thumb.php?f=$1&width=$2 [L,QSA,B] - - RewriteCond %{REQUEST_FILENAME} !-f - RewriteCond %{REQUEST_FILENAME} !-d - 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] - - - /w/maintenance/> - Require all denied - - - /w/LocalSettings.php> - Require all denied - - - /w/images/> - Options -ExecCGI -Includes -Indexes - AllowOverride None - AddType text/plain .html .htm .shtml - php_admin_flag engine off - - - /w/cache/> - Options -ExecCGI -Includes -Indexes - AllowOverride None - AddType text/plain .html .htm .shtml - php_admin_flag engine off - - - - Require all denied - - - - Require all denied - - - - Require all denied - - <% end -%>