Nginx 是否会对每个请求压缩文件?(使用 gzip_on)

Nginx 是否会对每个请求压缩文件?(使用 gzip_on)

这是我的第一个问题,请原谅我的英语不好。

我正在研究如何提高我的页面速度,并且我发现了 nginx gzip 设置。

以下是 nginx.conf 中的 gzip 设置

gzip on;
gzip_disable "msie6";

gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_comp_level 5;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript application/vnd.    ms-fontobject application/x-font-ttf font/opentype image/svg+xml image/x-icon
gunzip on;
gzip_static on;

我假设通过这些设置,如果存在 .gz 压缩文件,nginx 将提供该文件,而不是原始文件。如果不存在,nginx 将在用户请求时对其进行压缩。如果我错了,请纠正我,我是否正确?

我的问题是:每次新用户请求时,Nginx 都会压缩原始文件吗?还是它提供这些压缩文件的缓存/保存版本?

例如:我的静态文件夹中有这些文件。

/static/css/main.css
/static/css/main.css.gz
/static/js/main.js
/static/js/main.js.gz
/static/html/index.html

当用户 A 请求 index.html 文件时,Nginx 会动态压缩该文件,但是如果用户 B 请求相同的 index.html 文件,Nginx 会再次压缩该文件还是会从某处提供缓存/保存的版本?

答案1

index.htm是的,由于没有index.html.gz文件,Nginx 每次请求时都会压缩l。

说实话,如今 gzip 并不占用太多处理器资源,而且实时 gzip 压缩(然后在浏览器中解压)通常是常态。这是 Web 浏览器非常擅长的事情。

因此,除非您获得大量流量,否则您可能不会注意到由于大多数 Web 文件即时 gzip 压缩而对性能或 CPU 负载产生任何影响。

相关内容