worker_processes auto;
worker_cpu_affinity auto;
worker_rlimit_nofile 65535;

error_log logs/error.log warn;

pid logs/nginx.pid;

events {
    worker_connections 1024;
    use epoll;
    multi_accept on;
}

http {

    include mime.types;
    default_type application/octet-stream;

    index    index.html index.htm;

    proxy_set_header X-Real-IP       $proxy_protocol_addr;
    proxy_set_header X-Forwarded-For $proxy_protocol_addr;

    log_format proxy '$proxy_protocol_addr - $remote_user [$time_local] '
                        '"$request" $status $body_bytes_sent '
                        '"$http_referer" "$http_user_agent"';

    sendfile on;
    
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout 65;

    #gzip  on;

    server {
        listen 127.0.0.1:8001 proxy_protocol;
        listen 127.0.0.1:8002 http2 proxy_protocol;
        server_name yourserver.com;

        set_real_ip_from 127.0.0.1;

        charset utf-8;

        access_log logs/yourserver.access.log proxy;

        location / {
            root /var/www/html;
        }

        error_page  404              /404.html;

        error_page 500 502 503 504 /50x.html;
    }
}