如何使用 Nginx 缓存提高网站性能 ?
off999 2025-10-14 03:44 44 浏览 0 评论
快速加载的站点提供了更好的用户体验并且可以拥有更高的搜索引擎排名。通过 Nginx 缓存提高你的网站性能是一个有效的方法。Nginx 是一个流行的开源 web 服务器,也可以作为 web 服务器反向代理,负载平衡器和 HTTP 缓存。
Nginx 缓存的好处
(1) Improved load times
将频繁请求的内容存储在内存中,Nginx 缓存减少了加载页面所需的时间,这将为用户带来更快的浏览体验。
(2) Reduced server load
缓存减少了服务器必须处理的请求数量,从而释放了资源并降低了总体负载。
(3) Scalability
随着你的网站越来越受欢迎,缓存可以帮助管理不断增长的流量,而不需要额外的服务器资源。
(4) Enhanced SEO
更快的加载时间可以提高搜索引擎排名,使您的网站更容易被潜在用户发现。
Step 1: 安装 Nginx
首先,你需要在你的服务器上安装 Nginx。如果你还没有,请按照操作系统的官方安装指南。
- Nginx Installation for Linux
- Nginx Installation for Windows
Step 2: 配置 Nginx 缓存
安装 Nginx 后,需要编辑配置文件,通常位于 /etc/nginx/nginx.conf,在 http 块中添加以下行:
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g inactive=60m use_temp_path=off;
这个指令使用的参数如下:
- /var/cache/nginx 缓存存储位置
- levels=1:2 缓存目录层级结构
- keys_zone=my_cache:10m 缓存区及其大小
- max_size=1g 最大缓存大小
- inactive=60m 未使用的缓存内容被删除的时间
- use_temp_path=off 禁止使用临时目录路径
Step 3: 将缓存添加到 Server Block
接下来,打开站点配置文件,通常位于
/etc/nginx/sites-available/your-domain.conf,找到 server 块,添加以下行:
proxy_cache my_cache;
proxy_cache_valid 200 30m;
proxy_cache_valid 404 1m;
add_header X-Proxy-Cache $upstream_cache_status;
这些指令通过以下设置为您的网站启用缓存:
- proxy_cache my_cache 使用前面定义的缓存区域
- proxy_cache_valid 200 30m 缓存成功响应 (HTTP 200) 30 分钟
- proxy_cache_valid 404 1m 缓存未找到响应(HTTP 404)1 分钟
- add_header X-Proxy-Cache $upstream_cache_status 添加一个头在响应中显示缓存状态
Step 4: 测试并重新加载 Nginx 配置
编辑完配置文件后,使用以下命令测试更改
sudo nginx -t
如果测试成功,重新加载 Nginx 以应用新的设置
sudo service nginx reload
Step 5: 监控和优化 Nginx 缓存
在设置缓存之后,必须监视其有效性并根据需要进行调整。检查网站的 X-Proxy-Cache HTTP 响应头
,以确定内容是否从缓存中提供服务(HIT 状态),或者是否缓存错失(MISS 或 BYPASS 状态)
还可以查看 Nginx 日志,以了解更多缓存行为的详细信息。日志默认存放在 /var/log/nginx/ 目录下。
为了进一步优化缓存,可以考虑调整以下参数:
Cache duration
通过修改 proxy_cache_valid 指令,针对不同响应类型微调缓存持续时间。在缓存动态内容时要小心,因为过于激进的缓存可能导致提供过时的信息给用户。
Cache key
缓存 key 决定如何存储和检索缓存的内容。默认情况下,Nginx 使用请求 URI 作为缓存 key,你也可以通过添加 proxy_cache_key 指令来自定义。例如,可以在缓存 key 中包含请求方法和主机。
proxy_cache_key "$request_method$host$request_uri";
Cache locking
启用缓存锁定可以防止同时请求相同的未缓存内容,称为 thundering herd 问题。
proxy_cache_lock on;
proxy_cache_lock_timeout 5s;
Cache bypass
在某些情况下,您可能想要绕过特定请求的缓存。例如,针对已登录的用户不启用缓存。
proxy_cache_bypass $cookie_user;
我的开源项目
- course-tencent-cloud(酷瓜云课堂 - gitee 仓库)
- course-tencent-cloud(酷瓜云课堂 - github 仓库)
相关推荐
- win10系统安装不了(win10 安装不了)
-
电脑装不上win10系统可能是因为以下几个原因导致的原因一:win10安装文件不对我们在安装win10之前,要确保下载到安装包真实可用的,否则安装肯定会有问题,建议下载安全可靠的安装包!原因二:系统文...
- 国内dns哪个最快(dns开启好还是关闭好)
-
移动dns设置首选114.114.114.114,它又好又快。首选DNS和备用DNS都是一种域名系统,这两种域名系统有着先后之分,如果在首选DNS正常的情况下,就用首选DNS地址。当首选DNS服务器出...
- winxp安装盘(winxp系统安装)
-
xp系统安装步骤如下1、将下载的xp系统iso压缩包文件下载到C盘之外的分区,比如下载到D盘,右键使用WinRAR等工具解压到当前文件夹或指定文件夹,不能解压到C盘和桌面,否则无法安装;?2、解压之后...
- 现在的win11稳定了吗(win11稳定嘛)
-
windows10更稳定,由于win11刚刚推出没多久,稳定差不够好,兼容性也有待提升,无论是应用还是游戏都会遇到不明程度的问题,因此,在日常的使用过程中,我们还是应当以稳定性为优先,选择win10是...
- xp安装包下载到手机(xp系统安装包)
-
手机是基于ARM架构的处理器,而WindowsXP是基于x86架构的操作系统,因此无法直接在手机上安装WindowsXP。除非您的手机是使用Intel处理器,但这种情况非常罕见。如果您需要在手机上...
- 如何查看硬盘序列号(windows如何查看硬盘序列号)
-
1.打开开始菜单栏,输入【cmd】点击【确定】;2.在命令窗口依次输入【diskpart】-【listdisk】-【selectdisk0】;3.选好要查看的硬盘后,接着输入【detaildi...
- 虚拟机安装win7教程(虚拟机安装win7教程图解)
-
1.首先,下载并安装虚拟机软件,如VMwareWorkstation、VirtualBox等。2.打开虚拟机软件,创建一个新的虚拟机。3.在创建虚拟机的过程中,选择安装Windows7专业版的IS...
- 系统脱敏法的操作程序如何
-
系统脱敏疗法(systematicdesensitization)又称交互抑制法,是由美国学者沃尔普创立和发展的。这种方法主要是诱导求治者缓慢地暴露出导致神经症焦虑、恐惧的情境,并通过心理的放松状态...
- 闪迪u盘低级格式化工具(闪迪u盘格式化分配单元大小)
-
闪迪U盘格式化后速度变慢的可能原因及解决方法如下:文件系统问题:格式化时选择的文件系统类型可能会影响U盘的性能。常见的文件系统类型包括FAT32、NTFS和exFAT等。如果文件系统类型不合适,可能会...
- psd文件下载(psd格式下载网站)
-
1、在photoshop中,不能通过置入的方法来加载PSD文件,因为,通过置入的方法加载PSD文件,它是以合并图层的方法把PSD文件加入,这样,就失去了PSD文件的所有图层信息。 2、在文档中想...
- 宏碁官网下载win7系统(宏碁官方系统)
-
宏基笔记本win8系统换成win7步骤:1、更改bios设置,关闭“SecureBoot”功能,启用传统的“LegacyBoot”。2、制作u启动U盘启动盘,下载win7系统安装包3、设置U盘启动...
- 如何重装系统win7旗舰版32位
-
首先下载制作一个带系统的启动u盘,然后按以下步骤安装:1、首先关闭电脑上面的杀毒软件,2、进入bios选择u盘启动。3、插入启动u盘重新启动电脑4、进入pe系统镜像环节,选择要安装的系统(32位),然...
- 应用程序发生异常0xe0000008
-
先查看一下对应的软件是不是出现了损坏,也可以重装此软件。我们还可以尝试通过修改注册表来解决。按Win+R(或者在开始菜单搜索框输入“运行”)打开运行,然后输入“regedit”回车,打开注册表恢复原来...
- 笔记本连接wifi显示无法连接网络
-
笔记本电脑连接wifi时提示无法连接到这个网络1、打开电脑“控制面板”,点击“网络连接”,选择本地连接,右键点击本地连接图标后选“属性”,在“常规”选项卡中双击“Internet协议(TCP/IP)...
- windowsc盘清理大师(c盘清理大师怎么样)
-
C盘清理大师是一款流氓软件,可不是windows10里自带。在你的电脑上出现这个软件一般情况下可以证明你使用的系统是盗版的,系统采用的是网上流传的系统镜像制作的。在网上流传这些系统镜像文件...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
python入门到脱坑 输入与输出—str()函数
-
宝塔面板如何添加免费waf防火墙?(宝塔面板开启https)
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
系统u盘安装(win11系统u盘安装)
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
