Im using brotli to pre-compress my scripts. Here is my scripts
Nginx config:
root /var/www/laravel/public;
server_name mysite.com;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
index index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
error_page 404 /index.php;
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.(?!well-known).* {
deny all;
}
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/mysite/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/mysite/privkey.pem; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
brotli on;
brotli_static on;
brotli_types *;
Here's screenshot from chrome:
Headers. They are correct i guess
But still chrome is getting uncompressed file! When i set throttling to "Fast 3G", chrome slooowly downloads 1.6MB uncompressed script. What am I doing wrong?
The problem was in my antivirus. I'm using ESET NOD32. I disabled http protocol checking, and now i'm getting compressed files in my browser.