##### Process http start ####################################################### server { listen 80; server_name DOMAIN; return 301 https://DOMAIN$request_uri; server_tokens off; } ##### Process http stop ######################################################## ##### Process https start ###################################################### server { listen 443 ssl http2; server_name DOMAIN; server_tokens off; root /usr/share/zabbix; index index.php; ##### SSL configuration start ############################################## # ssl_protocols TLSv1.2 TLSv1.3; # ssl_ciphers EECDH+AESGCM:EDH+AESGCM; # ssl_prefer_server_ciphers off; # ssl_stapling on; # ssl_stapling_verify on; # resolver 8.8.4.4 8.8.8.8; # resolver_timeout 5s; # ssl_session_timeout 1d; # ssl_session_tickets off; # ssl_session_cache shared:SSL:10m; # ssl_certificate /etc/letsencrypt/live/DOMAIN/fullchain.pem; # ssl_certificate_key /etc/letsencrypt/live/DOMAIN/privkey.pem; # ssl_trusted_certificate /etc/letsencrypt/live/DOMAIN/fullchain.pem; ##### SSL configuration stop ############################################### ##### XSS headers start #################################################### # add_header X-Frame-Options DENY; # add_header X-Frame-Options SAMEORIGIN; # add_header X-Content-Type-Options nosniff; # add_header X-XSS-Protection "1; mode=block"; # add_header Permissions-Policy interest-cohort=(); # add_header Content-Security-Policy "default-src 'self'"; # add_header Referrer-Policy strict-origin-when-cross-origin; # add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"; ##### XSS headers stop ##################################################### ##### Optional include custom Error pages start ############################ include /etc/nginx/nginxsnippets/custom-errors.conf; ##### Optional include custom Error pages stop ############################# ##### Optional disable gzip start ########################################## # gzip off; ##### Optional disable gzip stop ########################################### ##### Optional disable access log start #################################### # access_log off; ##### Optional disable access log stop ##################################### ##### Block Bad referers and bad bots start ################################ if ($bad_referer) { return 444; } if ($bad_user_agent) { return 444; } ##### Block Bad referers and bad bots stop ################################# ##### Optional stuff start ################################################# # include /etc/nginx/nginxsnippets/block-engines.conf; include /etc/nginx/nginxsnippets/log-exclude.conf; include /etc/nginx/nginxsnippets/block-htaccess.conf; include /etc/nginx/nginxsnippets/block-file-access.conf; ##### Optional stuff stop ################################################## ##### Enable fastcgi cache start ########################################### set $skip_cache 0; ##### Enable fastcgi cache stop ############################################ ##### Misc content start ################################################### location / { try_files $uri $uri/ =404; } location /assets { access_log off; expires 10d; } location ~ /(api\/|conf[^\.]|include|locale) { deny all; return 404; } ##### Misc content stop #################################################### ##### Process php ########################################################## location ~ [^/]\.php(/|$) { fastcgi_pass unix:/var/run/php/zabbix.sock; fastcgi_param DOCUMENT_ROOT /usr/share/zabbix; fastcgi_param SCRIPT_FILENAME /usr/share/zabbix$fastcgi_script_name; fastcgi_param PATH_TRANSLATED /usr/share/zabbix$fastcgi_script_name; include fastcgi_params; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_intercept_errors on; fastcgi_ignore_client_abort off; fastcgi_connect_timeout 60; fastcgi_send_timeout 180; fastcgi_read_timeout 180; fastcgi_buffer_size 128k; fastcgi_buffers 4 256k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; } ##### Process php ########################################################## ##### Cache js css and all statics start ################################### # include /etc/nginx/nginxsnippets/cache-open-files.conf; include /etc/nginx/nginxsnippets/cache-statics.conf; include /etc/nginx/nginxsnippets/cache-js-css.conf; ##### Cache js css and all statics stop #################################### } ##### Process https start ######################################################