`

nginx gzip 静态文件压缩

阅读更多

nginx gzip 静态文件压缩

nginx gzip 静态文件压缩能很大程度上提高网站的访问速度,但是文件的压缩会占用很大的内存,如果将网站的静态的文件提前用gzip压缩后再配置nginx的 rewrite规则来转向到压缩后的文件将会对网站的性能有很大的提高。

思路,把静态文件用gzip压缩后放在网站的目录下,然后用rewrite把请求转发到压缩后的文件,并增加add_header Content-Encoding gzip;这都很容易理解,但是Content-Type的设置就不是那么好搞的了。common.js压缩后是common.js.gz,转发到.gz 文件就好了。

第一次接触nginx对它的配置不是很熟悉,最初在location段增加add_header Content-Type原本认为可以了,但是查看页面传输信息里会有两个Content-Type,一个为新增加的那个,一个为http段的 default_type。

nginx返回两个Content-Type于是我把add_header Content-Type 去掉,在mime.types中增加一个mime类型,增加一个jsgz mime类型并把压缩后的文件更名为common.js.jsgz。转发到.jsgz文件就好了。这样设置可以了但是我总感觉不爽,多增加了几个mime 类型。

最终解决方法在location段增加default_type设置,配置如下:

location ~ .*\.(js)?$

{

expires 30d;

default_type application/x-javascript;

if ($http_accept_encoding ~ “gzip”){

set $rule_0 1$rule_0;

}

if (-f $request_filename.gz){

set $rule_0 2$rule_0;

}

if ($rule_0 = “21″) {

add_header Vary Accept-Encoding;

add_header Content-Encoding gzip;

gzip off;

rewrite (.*) $1.gz break;

}

}

标签: nginx

分享到:
评论

相关推荐

    nginx访问静态文件不下载.rar

    - 使用`gzip`压缩静态资源,减少传输大小,提高加载速度。 5. **安全考虑** - 配置防盗链策略,防止其他网站通过引用你的静态资源,增加服务器负担。可以使用`valid_referers`指令实现。 - 限制对敏感静态文件的...

    nginx-1.18.0已开启gzip压缩优化vue项目大小.zip

    这样,当Vue Element Admin项目被打包时,所有匹配规则的文件都会被预先gzip压缩,准备就绪后上传到Nginx服务器。 总结起来,这个压缩包提供了一个已经优化过的Vue Element Admin项目,它经过了gzip压缩,能够更快...

    docker下nginx配置压缩字体和图片等配置

    总结起来,要在Docker下的Nginx环境中配置字体和图片的GZIP压缩,你需要更新`docker-compose.yml`以设置环境变量,修改`nginx.conf`以启用GZIP和指定压缩的文件类型,以及确保`mime.types`文件包含了所有要处理的...

    nginx 映射本地文件

    - **开启GZIP压缩**:减少传输的数据量,提高加载速度。 - **设置缓存**:对于频繁访问的静态资源,可以设置缓存,减少服务器负载。 - **使用CDN**:通过内容分发网络(CDN)进一步提高全球用户的访问速度。 总之,...

    13-nginx gzip压缩提升网站速度.zip

    在Nginx配置中启用gzip压缩,你需要在nginx.conf或相应的服务器块配置文件中添加以下配置段: ```nginx http { gzip on; # 开启gzip压缩 gzip_types text/plain text/css application/json application/...

    Nginx部署使用gzip压缩的Unity网页WebGL

    2. **gzip压缩**:为了提高网站性能,Nginx提供了gzip静态内容压缩功能,可以减小传输数据量,加快页面加载速度。在Nginx配置文件中,我们需要添加或修改以下部分来启用gzip: ```nginx gzip on; gzip_types text...

    Nginx服务器实现数据静态压缩的方法

    首先需要了解的是,Nginx服务器的静态压缩功能与Apache服务器的Gzip压缩功能类似。通过压缩静态文件,可以减少网络传输的数据量,降低服务器带宽消耗,并且提高用户浏览网站时的响应速度。在Nginx中,可以使用ngx_...

    基于nginx的静态网页部署的实现

    总结一下,基于Nginx部署静态网页的步骤主要包含:配置Nginx的主配置文件,设置监听端口、服务器名称、根目录和默认文件等;创建站点根目录并将静态资源文件放置其中;利用location指令针对不同的请求提供不同的服务...

    Nginx设置静态页面压缩和缓存过期时间的方法

    首先,静态页面压缩是为了降低带宽消耗和提升页面加载速度,常见的压缩方式有gzip压缩。在Nginx中启用gzip压缩,需要确保以下参数被正确设置: 1. gzip on; // 开启gzip压缩功能 2. gzip_min_length 1000; // 设置...

    Nginx使用Gzip算法对报文进行压缩详解

    其中,Gzip是一种广泛使用的压缩算法,它可以有效地减小静态资源(如HTML、CSS、JavaScript文件)的大小,从而加快内容的传输速度。Nginx作为一个高性能的HTTP和反向代理服务器,它提供了对Gzip压缩的支持。这篇文章...

    nginx简单的负载,缓存静态文件配置

    nginx配置文件nginx.conf ,主要标记了nginx 的负载配置upstream,静态资源缓存,是否开启压缩

    详解Nginx 静态文件服务配置及优化

    3. **合并和缩小CSS/JS文件**:将多个CSS或JavaScript文件合并为一个文件,可以减少HTTP请求的数量,同时压缩文件内容,进一步提升加载速度。 4. **使用HTTP2**:HTTP2协议支持多路复用,可以同时处理多个请求,...

    Nginx中的Gzip压缩配置介绍

    在Nginx中启用Gzip压缩,可以使静态资源(如HTML、CSS、JavaScript等)在传输过程中被压缩,降低了带宽需求,尤其对于移动用户和低带宽环境来说,效果尤为明显。 以下是一些Nginx中Gzip压缩的主要配置指令: 1. `...

    详解Nginx服务器的配置中开启文件Gzip压缩的方法

    在Nginx中启用Gzip压缩通常涉及编辑Nginx的配置文件,通常是`/etc/nginx/nginx.conf`或`/usr/local/nginx/conf/nginx.conf`。以下是一些关键配置指令及其作用: 1. `gzip on;`:这一行用于开启Gzip压缩功能。设置为...

    gzip 压缩 三种方法

    - **缓存策略**:开启gzip压缩后,应考虑对静态资源设置合适的缓存策略,以减少不必要的压缩计算。 - **文件大小阈值**:对于非常小的文件,压缩可能并不能带来显著的优化,甚至可能因额外的压缩和解压过程而降低...

    Gzip压缩无效的终极解决方案!

    4、单击“服务”标签,选中“压缩应用程序文件”和“压缩静态文件”,同时根据情况设置临时目录的最大容量,初期可以限制为1G左右; 5、返回Internet信息服务(IIS)管理器,右击“Web服务扩展”,弹出Web服务扩展...

    nginx配置文件

    3. **Gzip压缩**:开启gzip压缩,减少网络传输的数据量。 4. **SSL配置**:启用HTTPS支持,提升网站安全性。 **五、故障排查与重启** 修改配置后,使用`nginx -t`命令检查配置文件的语法,无误后使用`sudo ...

    js压缩gzip格式

    这些工具在打包过程中自动将JS文件转换为gzip格式,生成的文件可以在静态资源服务器上直接使用。 在提供的压缩包中,"gzip使用说明"文档将详细解释如何安装gzip和实际操作步骤。它可能涵盖了在不同操作系统(如...

    nginx的各项详细配置-超多注释

    - **http块**: 包含多个server块,定义HTTP协议相关设置,如开启gzip压缩(gzip on)。 - **server块**: 定义一个监听端口的服务器,可以有多个,如监听80端口(listen 80)。 - **location块**: 处理特定URL请求,...

    Nginx配置文件说明.

    - `gzip`模块用于开启GZIP压缩,提高传输效率。 - `access_log`定义访问日志的位置和格式。 - `server`块定义了虚拟主机的配置。 4. **虚拟主机(Server块)**:每个`server`块代表一个虚拟主机,包括监听端口...

Global site tag (gtag.js) - Google Analytics