【问题标题】:nginx gzip compression not workingnginx gzip压缩不起作用
【发布时间】:2016-02-29 19:21:37
【问题描述】:

我不知道在我的http 块中放置 gzip 压缩行的位置,如图所示。

http {
    default_type application/octet-stream;
    include /etc/nginx/mime.types;

    log_format  main    '$remote_addr - $remote_user [$time_local] "$request" '
                        '$status $body_bytes_sent "$http_referer" '
                        '"$http_user_agent" "$http_x_forwarded_for"';

    access_log /var/log/nginx/access.log main;

    keepalive_timeout 65;

    server {

        listen 8080;

        root /usr/share/nginx;

        location / {
            root /usr/share/nginx/html;

            try_files $uri /index.html;

            autoindex off;
        }

        location ~ ^/(images|fonts|videos)/ {
            root /usr/share/nginx/assets;

            autoindex                off;
            expires                  7d;
            proxy_redirect           off;
            proxy_max_temp_file_size 0;

        }

        location ~ \.(mp3|mp4) {

        }
    }

    include /etc/nginx/conf.d/*.conf;
}

我要用于gzip压缩的行在这里,我不知道是放在服务器块中,服务器块之前还是位置块中:

# Compression
gzip on;
gzip_proxied any;
gzip_types text/plain text/xml text/css application/x-javascript;
gzip_vary on;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";
gzip_static on;

我将 gzip_static 设置为“on”,因为我使用 gulp-gzip 来压缩各种 css 和 js 文件。

【问题讨论】:

  • 您是如何确定 gzip 不起作用的? gzip 在 nginx 默认安装中默认启用,您可以在 nginx.conf 文件下找到它,但是,您可以在您认为合适的区域中为您的适当情况添加特定的自定义
  • 通过单击网络选项卡,我可以通过查找Content-Encoding 字段来查看内容是否被压缩。出于某种原因,我想要 gzip 的 js / css 文件没有显示该字段。
  • Here 是我的 build.min.js 的响应标头。注意没有Content-Encoding: gzip 字段
  • 可能是你定义的 gzip_types 与 nginx 看到的不匹配有关,尝试删除它看看是不是这样,nginx 应该默认使用 gzip
  • 我刚刚检查了我的一个网络应用程序的配置,这是使它工作的 conf,我希望它可以帮助你 [gzip_types text/plain text/html text/css application/json application/ javascript 文本/xml 应用程序/xml 文本/javascript;]

标签: nginx gzip


【解决方案1】:

像这样编辑您的配置文件,它应该可以工作:

gzip on;
gzip_comp_level 6;
gzip_vary on;
gzip_types text/plain text/css application/json application/x-javascript application/javascript text/xml application/xml application/rss+xml text/javascript image/svg+xml application/vnd.ms-fontobject application/x-font-ttf font/opentype;

注意添加的类型,因为有时这些类型可以被不同的系统以不同的方式检测到。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-09
    • 1970-01-01
    • 2017-03-20
    • 2018-04-19
    • 2015-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多