]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/apache/templates/default/httpd.conf.erb
apache: use 429 error for mod-evasive
[chef.git] / cookbooks / apache / templates / default / httpd.conf.erb
index 73e59c7256e6d297df9f9925350f9913537a9c08..3f78187f8b540d37e878184e440b09d138964515 100644 (file)
@@ -1,5 +1,8 @@
 # DO NOT EDIT - This file is being maintained by Chef
 
+# Enable HTTP/2 over TLS
+Protocols h2 http/1.1
+
 # Set the number of seconds before receives and sends time out
 Timeout <%= node[:apache][:timeout] %>
 
@@ -14,8 +17,8 @@ ServerLimit <%= node[:apache][:prefork][:server_limit] %>
 <% end -%>
 MinSpareServers <%= node[:apache][:prefork][:min_spare_servers] %>
 MaxSpareServers <%= node[:apache][:prefork][:max_spare_servers] %>
-MaxClients <%= node[:apache][:prefork][:max_clients] %>
-MaxRequestsPerChild <%= node[:apache][:prefork][:max_requests_per_child] %>
+MaxRequestWorkers <%= node[:apache][:prefork][:max_request_workers] %>
+MaxConnectionsPerChild <%= node[:apache][:prefork][:max_connections_per_child] %>
 <% end -%>
 <% if node[:apache][:mpm] == "worker" -%>
 
@@ -28,8 +31,8 @@ MinSpareThreads <%= node[:apache][:worker][:min_spare_threads] %>
 MaxSpareThreads <%= node[:apache][:worker][:max_spare_threads] %>
 ThreadLimit <%= node[:apache][:worker][:thread_limit] %>
 ThreadsPerChild <%= node[:apache][:worker][:threads_per_child] %>
-MaxClients <%= node[:apache][:worker][:max_clients] %>
-MaxRequestsPerChild <%= node[:apache][:worker][:max_requests_per_child] %>
+MaxRequestWorkers <%= node[:apache][:worker][:max_request_workers] %>
+MaxConnectionsPerChild <%= node[:apache][:worker][:max_connections_per_child] %>
 <% end -%>
 <% if node[:apache][:mpm] == "event" -%>
 
@@ -42,11 +45,24 @@ MinSpareThreads <%= node[:apache][:event][:min_spare_threads] %>
 MaxSpareThreads <%= node[:apache][:event][:max_spare_threads] %>
 ThreadLimit <%= node[:apache][:event][:thread_limit] %>
 ThreadsPerChild <%= node[:apache][:event][:threads_per_child] %>
-MaxClients <%= node[:apache][:event][:max_clients] %>
-MaxRequestsPerChild <%= node[:apache][:event][:max_requests_per_child] %>
+MaxRequestWorkers <%= node[:apache][:event][:max_request_workers] %>
+MaxConnectionsPerChild <%= node[:apache][:event][:max_connections_per_child] %>
+<% if node[:apache][:event][:async_request_worker_factor] -%>
+AsyncRequestWorkerFactor <%= node[:apache][:event][:async_request_worker_factor] %>
+<% end -%>
+<% if node[:apache][:event][:listen_cores_buckets_ratio] -%>
+ListenCoresBucketsRatio <%= node[:apache][:event][:listen_cores_buckets_ratio] %>
+<% end -%>
 <% end -%>
 
 # Default to UTF-8
 AddDefaultCharset utf-8
 
+# Add extra mime types
+AddType application/x-xz .xz
+
+# Configure logging
 BufferedLogs <%= node[:apache][:buffered_logs] ? "On" : "Off" %>
+
+# Define an extended log format that includes request time and SSL details
+LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\" %Dus %{SSL_PROTOCOL}x %{SSL_CIPHER}x" combined_extended