1
1
mirror of https://gitlab.archlinux.org/archlinux/infrastructure.git synced 2025-01-18 08:06:16 +01:00
infrastructure/roles/nginx/templates/nginx.conf.j2
Sven-Hendrik Haase 2b1ba2f3b9
nginx: Add toplevel-snippets mechanism
This allows you to add snippets for toplevel nginx configuration directives that can't go into the http level.
Use this for loading modules and such.
2019-10-13 19:40:46 +02:00

86 lines
2.6 KiB
Django/Jinja

worker_processes auto;
load_module /usr/lib/nginx/modules/ngx_http_brotli_filter_module.so;
load_module /usr/lib/nginx/modules/ngx_http_brotli_static_module.so;
include toplevel-snippets/*.conf;
events {
worker_connections 2048;
}
worker_rlimit_nofile 2048;
error_log syslog:server=unix:/dev/log,nohostname info;
http {
include mime.types;
default_type application/octet-stream;
types_hash_max_size 4096;
log_format main
'$remote_addr $host $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" $request_time';
log_format reduced
'$host [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent"';
log_format json_main escape=json
'{'
'"remote_addr":"$remote_addr",'
'"host":"$host",'
'"remote_user":"$remote_user",'
'"time_local":"$time_local",'
'"request":"$request",'
'"status": "$status",'
'"body_bytes_sent":"$body_bytes_sent",'
'"http_referrer":"$http_referer",'
'"http_user_agent":"$http_user_agent",'
'"http_x_forwarded_for":"$http_x_forwarded_for",'
'"request_time":"$request_time"'
'}';
log_format json_reduced escape=json
'{'
'"remote_addr":"$remote_addr",'
'"host":"$host",'
'"remote_user":"$remote_user",'
'"time_local":"$time_local",'
'"request":"$request",'
'"status": "$status",'
'"body_bytes_sent":"$body_bytes_sent",'
'"http_referrer":"$http_referer",'
'"http_user_agent":"$http_user_agent",'
'"http_x_forwarded_for":"$http_x_forwarded_for",'
'"request_time":"$request_time"'
'}';
sendfile on;
keepalive_timeout 65;
client_max_body_size 16M;
gzip on;
gzip_comp_level 6;
gzip_types text/plain text/css application/javascript application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
brotli on;
brotli_types text/plain text/css application/javascript application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
http2_max_field_size 8k;
index index.php index.html index.htm;
{% if fastcgi_cache %}
fastcgi_cache_path /etc/nginx/wikicache levels=1:2 keys_zone=wiki:100m inactive=60m;
fastcgi_cache_key "$scheme$request_method$host$request_uri";
{% endif %}
access_log syslog:server=unix:/dev/log,nohostname,tag=nginx_http main;
include snippets/sslsettings.conf;
include nginx.d/*.conf;
}