Update to apache 2.4 access controls
[chef.git] / cookbooks / wordpress / templates / default / apache.erb
1 # DO NOT EDIT - This file is being maintained by Chef
2
3 <VirtualHost *:80>
4   ServerName <%= @name %>
5 <% @aliases.each do |alias_name| -%>
6   ServerAlias <%= alias_name %>
7 <% end -%>
8
9   ServerAdmin webmaster@openstreetmap.org
10
11   CustomLog /var/log/apache2/<%= @name %>-access.log combined
12   ErrorLog /var/log/apache2/<%= @name %>-error.log
13
14 <% if @ssl_enabled -%>
15   RedirectPermanent / https://<%= @name %>/
16 </VirtualHost>
17
18 <VirtualHost *:443>
19   ServerName <%= @name %>
20 <% @aliases.each do |alias_name| -%>
21   ServerAlias <%= alias_name %>
22 <% end -%>
23
24   ServerAdmin webmaster@openstreetmap.org
25
26   #
27   # Enable SSL
28   #
29   SSLEngine on
30
31   CustomLog /var/log/apache2/<%= @name %>-access.log combined
32   ErrorLog /var/log/apache2/<%= @name %>-error.log
33 <% end -%>
34
35   DocumentRoot <%= @directory %>
36 <% @urls.each do |url,directory| -%>
37   Alias <%= url %> <%= directory %>
38 <% end -%>
39
40   php_admin_value open_basedir <%= @directory %>/:/usr/share/php/:/tmp/
41   php_admin_value disable_functions "exec,shell_exec,system,passthru,popen,proc_open"
42   php_value upload_max_filesize 70M
43   php_value post_max_size 100M
44
45   <Directory <%= @directory %>>
46     RewriteEngine on
47
48     RewriteRule ^wp-admin/includes/ - [F,L]
49     RewriteRule !^wp-includes/ - [S=3]
50     RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
51     RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
52     RewriteRule ^wp-includes/theme-compat/ - [F,L]
53     RewriteCond %{REQUEST_FILENAME} !-f
54     RewriteCond %{REQUEST_FILENAME} !-d
55     RewriteRule . /index.php [L]
56
57     Options -Indexes
58
59     Require all granted
60   </Directory>
61
62   <Files <%= @directory %>/wp-config.php>
63     Require all denied
64   </Files>
65
66   <Directory <%= @directory %>/uploads>
67     AllowOverride None
68     AddType text/plain .html .htm .shtml
69     php_admin_flag engine off
70   </Directory>
71
72   <Directory ~ "\.svn">
73     Require all denied
74   </Directory>
75
76   <Directory ~ "\.git">
77     Require all denied
78   </Directory>
79
80   <Files ~ "~$">
81     Require all denied
82   </Files>
83 </VirtualHost>