]> git.openstreetmap.org Git - chef.git/blob - cookbooks/wordpress/templates/default/apache.erb
59b63f753b72f0b5562483a506c923e307aaf5d1
[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 /.well-known/acme-challenge/ http://acme.openstreetmap.org/.well-known/acme-challenge/
16   RedirectPermanent / https://<%= @name %>/
17 </VirtualHost>
18
19 <VirtualHost *:443>
20   ServerName <%= @name %>
21 <% @aliases.each do |alias_name| -%>
22   ServerAlias <%= alias_name %>
23 <% end -%>
24
25   ServerAdmin webmaster@openstreetmap.org
26
27   SSLEngine on
28   SSLCertificateFile /etc/ssl/certs/<%= @name %>.pem
29   SSLCertificateKeyFile /etc/ssl/private/<%= @name %>.key
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   <Directory <%= directory %>>
39     AllowOverride None
40     php_admin_flag engine off
41     Require all granted
42   </Directory>
43 <% end -%>
44
45   php_admin_value open_basedir <%= @directory %>/:/usr/share/php/:/tmp/
46   php_admin_value disable_functions "exec,shell_exec,system,passthru,popen,proc_open"
47   php_value upload_max_filesize 70M
48   php_value post_max_size 100M
49
50   <Directory <%= @directory %>>
51     RewriteEngine on
52
53     RewriteRule ^wp-admin/includes/ - [F,L]
54     RewriteRule !^wp-includes/ - [S=3]
55     RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
56     RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
57     RewriteRule ^wp-includes/theme-compat/ - [F,L]
58     RewriteRule ^readme\.html$ [F,L]
59     RewriteCond %{REQUEST_FILENAME} !-f
60     RewriteCond %{REQUEST_FILENAME} !-d
61     RewriteRule . /index.php [L]
62
63     Options -Indexes
64     AllowOverride AuthConfig
65
66     Require all granted
67   </Directory>
68
69   <Files <%= @directory %>/wp-config.php>
70     Require all denied
71   </Files>
72
73   <Directory <%= @directory %>/uploads>
74     AllowOverride None
75     AddType text/plain .html .htm .shtml
76     php_admin_flag engine off
77   </Directory>
78
79   <Directory ~ "\.svn">
80     Require all denied
81   </Directory>
82
83   <Directory ~ "\.git">
84     Require all denied
85   </Directory>
86
87   <Files ~ "\.(txt|md)$">
88     Require all denied
89   </Files>
90
91   <Files ~ "~$">
92     Require all denied
93   </Files>
94 </VirtualHost>