X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/ee81158deadccd825471200b3c666c219a295ace..b52a55582446c7639f6727db470a9ba4d6ba7c1b:/cookbooks/apache/recipes/default.rb diff --git a/cookbooks/apache/recipes/default.rb b/cookbooks/apache/recipes/default.rb index 2d353950e..bc0410fd3 100644 --- a/cookbooks/apache/recipes/default.rb +++ b/cookbooks/apache/recipes/default.rb @@ -8,7 +8,7 @@ # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # -# http://www.apache.org/licenses/LICENSE-2.0 +# https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, @@ -17,48 +17,46 @@ # limitations under the License. # -package "apache2" +include_recipe "ssl" -if node[:lsb][:release].to_f < 14.04 - package "apache2-mpm-#{node[:apache][:mpm]}" do - notifies :restart, "service[apache2]" - end -else - ["event", "itk", "prefork", "worker"].each do |mpm| - if mpm == node[:apache][:mpm] - apache_module mpm do - action [ :install, :enable ] - package "apache2-mpm-#{node[:apache][:mpm]}" - end - else - apache_module mpm do - action [ :disable ] - package "apache2-mpm-#{node[:apache][:mpm]}" - end - end +package %w[ + apache2 + libwww-perl +] + +%w[event itk prefork worker].each do |mpm| + next if mpm == node[:apache][:mpm] + + apache_module "mpm_#{mpm}" do + action [:disable] end end +apache_module "mpm_#{node[:apache][:mpm]}" do + action [:enable] +end + +if node[:lsb][:release].to_f >= 18.04 + apache_module "http2" +end + admins = data_bag_item("apache", "admins") -template "/etc/apache2/httpd.conf" do - source "httpd.conf.erb" - owner "root" - group "root" - mode 0644 +apache_conf "httpd" do + template "httpd.conf.erb" + notifies :reload, "service[apache2]" end template "/etc/apache2/ports.conf" do source "ports.conf.erb" owner "root" group "root" - mode 0644 + mode 0o644 end service "apache2" do - action [ :enable, :start ] + action [:enable, :start] supports :status => true, :restart => true, :reload => true - subscribes :reload, "template[/etc/apache2/httpd.conf]" end apache_module "info" do @@ -71,8 +69,25 @@ apache_module "status" do variables :hosts => admins["hosts"] end -apache_module "reqtimeout" do - action [ :disable ] +apache_module "deflate" do + conf "deflate.conf.erb" +end + +if node[:apache][:reqtimeout] + apache_module "reqtimeout" do + action [:enable] + end +else + apache_module "reqtimeout" do + action [:disable] + end +end + +apache_module "headers" +apache_module "ssl" + +apache_conf "ssl" do + template "ssl.erb" end munin_plugin "apache_accesses"