server { listen 80 http2; server_name nginx.example.com; root /var/www/; index index.html index.php; #error_page 404 /error/404.html; ## FILE UPLOADS #client_max_body_size 10M; ## REAL VISITOR IP # local set_real_ip_from 172.16.0.0/12; set_real_ip_from 10.0.0.0/8; set_real_ip_from 192.168.0.0/16; # cloudflare #set_real_ip_from 103.21.244.0/22; #set_real_ip_from 103.22.200.0/22; #set_real_ip_from 103.31.4.0/22; #set_real_ip_from 104.16.0.0/13; #set_real_ip_from 104.24.0.0/14; #set_real_ip_from 108.162.192.0/18; #set_real_ip_from 131.0.72.0/22; #set_real_ip_from 141.101.64.0/18; #set_real_ip_from 162.158.0.0/15; #set_real_ip_from 172.64.0.0/13; #set_real_ip_from 173.245.48.0/20; #set_real_ip_from 188.114.96.0/20; #set_real_ip_from 190.93.240.0/20; #set_real_ip_from 197.234.240.0/22; #set_real_ip_from 198.41.128.0/17; #set_real_ip_from 2400:cb00::/32; #set_real_ip_from 2606:4700::/32; #set_real_ip_from 2803:f800::/32; #set_real_ip_from 2405:b500::/32; #set_real_ip_from 2405:8100::/32; #set_real_ip_from 2a06:98c0::/29; #set_real_ip_from 2c0f:f248::/32; # use XFF header to parse real IP real_ip_header X-Forwarded-For; real_ip_recursive on; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; location ~ \.php$ { fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PHP_VALUE "error_log=/etc/nginx/conf.d/php_error.log"; fastcgi_buffers 16 16k; fastcgi_buffer_size 32k; include fastcgi_params; } proxy_hide_header X-Powered-By; server_tokens off; etag off; }