首页
学习
活动
专区
工具
TVP
发布
技术百科首页 >Nginx >如何在Nginx上配置缓存和静态内容压缩?

如何在Nginx上配置缓存和静态内容压缩?

词条归属:Nginx

在Nginx上配置缓存和静态内容压缩,需要在Nginx配置文件中进行相应的配置。以下是一个简单的示例,展示了如何在Nginx上配置缓存和静态内容压缩。

打开Nginx配置文件。通常位于/etc/nginx/nginx.conf或/etc/nginx/sites-available/default。

在配置文件中,添加一个新的server块,如下所示:

代码语言:javascript
复制
http {
    ...
    server {
        listen 80;
        server_name example.com;

        # 配置缓存
        location ~* \.(jpg|jpeg|png|gif|ico|svg|woff|woff2|ttf|eot|otf|mp3|ogg|mp4)$ {
            expires 30d;
            add_header Cache-Control "public, no-transform";
        }

        # 配置静态内容压缩
        gzip on;
        gzip_vary on;
        gzip_types text/plain text/css text/javascript application/json application/javascript application/x-javascript application/xml+rss application/atom+xml application/rss+xml application/xhtml+xml application/font-woff application/font-woff2 application/vnd.ms-fontobject application/x-font-ttf application/x-font-opentype application/octet-stream;
        gzip_proxied any;
        gzip_comp_level 6;
        gzip_buffers 16 8k;
        gzip_http_version 1.1;

        location / {
            root /var/www/example.com;
            index index.html index.htm;
        }
    }
    ...
}

解释一下上述配置:

  • location ~* .(jpg|jpeg|png|gif|ico|svg|woff|woff2|ttf|eot|otf|mp3|ogg|mp4)$:定义一个缓存规则,将所有静态文件的缓存时间设置为30天,并添加Cache-Control头信息。
  • gzip on:开启Gzip压缩。
  • gzip_vary on:根据请求类型启用或禁用Gzip压缩。
  • gzip_types:定义需要压缩的文件类型。
  • gzip_proxied any:启用Gzip压缩,即使请求是通过代理服务器发送的。
  • gzip_comp_level 6:设置Gzip压缩级别,数值越大压缩效果越好,但消耗的CPU资源也越多。
  • gzip_buffers 16 8k:设置Gzip压缩缓冲区大小。
  • gzip_http_version 1.1:设置Gzip压缩的HTTP版本。

保存配置文件,重启Nginx服务:

代码语言:javascript
复制
sudo systemctl restart nginx

配置完成后,可以通过浏览器访问example.com,看是否能正确访问网站,并且缓存和静态内容压缩生效。

相关文章
如何在Ubuntu 14.04上配置Apache内容缓存
缓存是一种通过允许以允许更快访问的方式临时存储共同请求的内容来提高服务器性能的方法。这通过减少一些资源密集型操作来加速处理和交付。
独木桥先生
2018-09-21
1.1K0
如何在CentOS 7上配置Apache内容缓存
缓存是一种通过允许更快访问的方式临时存储共同请求的内容来提高服务器性能的方法。通过减少一些资源密集型操作来加速处理和交付。
司徒永哥
2018-09-21
2K0
如何在Kubernetes群集上安装,配置和部署NGINX
Kubernetes是一个基于Google Borg的开源容器管理系统。它可以配置为提供高度可用的,水平自动缩放的自动部署。本指南介绍如何在Linode上设置Kubernetes集群并管理NGINX服务的生命周期。
Techeek
2018-09-17
2.9K0
如何在Ubuntu 13.10上使用Varnish和Nginx配置集群Web服务器
集群Web服务器是Web托管中使用的一种技术,用于在多个计算机或“节点”之间分配负载。此技术的目的是消除单点故障并提高网站可用性和正常运行时间。通常,Web群集将使用多个后端和前端节点。
楠宝宝
2018-07-30
1.1K0
Nginx 面试 40 连问,快顶不住了~~
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022-07-07
1.2K0
点击加载更多
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
领券