server {
    listen 80;
    root "/var/www/html/public";
    index index.html index.htm index.php;
    charset utf-8;

    gzip on;
    gzip_types text/plain text/xml text/css application/x-javascript text/javascript application/javascript application/xml application/xml+rss application/atom+xml image/x-icon font/opentype application/json;
    gzip_min_length 256;
    gzip_vary on;
    gzip_disable "MSIE [1-6]\.(?!.*SV1)";
    gzip_proxied any;
    gzip_comp_level 6;

    # Brotli compression (requires libnginx-mod-http-brotli-filter and libnginx-mod-http-brotli-static)
    # Uncomment these lines after installing the brotli module
    #brotli on;
    #brotli_comp_level 6;
    #brotli_static on;
    #brotli_types application/atom+xml application/javascript application/json application/rss+xml
    #application/vnd.ms-fontobject application/x-font-opentype application/x-font-truetype
    #application/x-font-ttf application/x-javascript application/xhtml+xml application/xml
    #font/eot font/opentype font/otf font/truetype image/svg+xml image/vnd.microsoft.icon
    #image/x-icon image/x-win-bitmap text/css text/javascript text/plain text/xml text/html;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
    location ^~ /covers/ {
        root /var/www/html/storage;
    }

    access_log /dev/stdout;
    error_log stderr error;

    sendfile off;

    client_max_body_size 100m;

    location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        fastcgi_pass unix:/run/php/php8.4-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    location ~ /\.ht {
        deny all;
    }
}
