X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/c05f38004a026509d99b5f2350bfeb021e44fc42..15f6c76154197f073ec926f6e4ad3ec5b8841899:/cookbooks/nginx/templates/default/nginx.conf.erb diff --git a/cookbooks/nginx/templates/default/nginx.conf.erb b/cookbooks/nginx/templates/default/nginx.conf.erb index 398cefff9..68fae2f0a 100644 --- a/cookbooks/nginx/templates/default/nginx.conf.erb +++ b/cookbooks/nginx/templates/default/nginx.conf.erb @@ -1,33 +1,61 @@ # DO NOT EDIT - This file is being maintained by Chef user www-data; -worker_processes <%= node['cpu']['total'] %>; +worker_processes auto; +worker_cpu_affinity auto; +worker_rlimit_nofile 98304; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { - worker_connections 1024; + worker_connections 8192; } - http { include /etc/nginx/mime.types; default_type application/octet-stream; + server_names_hash_bucket_size 128; + map_hash_bucket_size 128; + +<% if node[:nginx][:access_log] -%> log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; - access_log /var/log/nginx/access.log main; - - sendfile on; - #tcp_nopush on; - - keepalive_timeout 65; - - #gzip on; + access_log <%= node[:nginx][:access_log] %> main buffer=32k flush=1m; +<% else -%> + access_log off; +<% end -%> + + keepalive_timeout 30; + + server_tokens off; + + ssl_protocols TLSv1 TLSv1.1 TLSv1.2; + ssl_ciphers <%= node[:ssl][:openssl_ciphers] -%>; + ssl_prefer_server_ciphers on; + ssl_session_cache shared:SSL:50m; + ssl_session_timeout 30m; + ssl_stapling on; + ssl_dhparam /etc/ssl/certs/dhparam.pem; + resolver <%= @resolvers.join(" ") %>; + resolver_timeout 5s; + + ssl_session_tickets on; + ssl_session_timeout 1h; + ssl_session_ticket_key /var/run/nginx-ephemeral/nginx_session_ticket_curr; + ssl_session_ticket_key /var/run/nginx-ephemeral/nginx_session_ticket_prev; + ssl_session_ticket_key /var/run/nginx-ephemeral/nginx_session_ticket_next; + + <% if node['nginx']['cache']['fastcgi']['enable'] -%> + fastcgi_cache_path /var/cache/nginx/fastcgi-cache levels=1:2 keys_zone=<%= node['nginx']['cache']['fastcgi']['keys_zone'] %> inactive=<%= node['nginx']['cache']['fastcgi']['inactive'] %> max_size=<%= node['nginx']['cache']['fastcgi']['max_size'] %>; + <% end -%> + <% if node['nginx']['cache']['proxy']['enable'] -%> + proxy_cache_path /var/cache/nginx/proxy-cache levels=1:2 keys_zone=<%= node['nginx']['cache']['proxy']['keys_zone'] %> inactive=<%= node['nginx']['cache']['proxy']['inactive'] %> max_size=<%= node['nginx']['cache']['proxy']['max_size'] %>; + <% end -%> include /etc/nginx/conf.d/*.conf; }