Nginx通过启用Gzip压缩、配置静态缓存、开启sendfile及调整worker进程数显著提升CSS等静态资源加载速度,具体包括:1. 启用Gzip并设置压缩级别;2. 为CSS文件设置1年过期时间;3. 开启sendfile和tcp_nopush;4. 根据CPU核心数设置worker_processes。

如果您在使用 Mac 上的 Nginx 配置反向代理时发现静态资源如 CSS 加载速度显著提升,这通常得益于 Nginx 对静态文件的高效处理和缓存机制。通过合理配置,可以极大优化前端资源的响应时间。
本文运行环境:MacBook Pro,macOS Sonoma
一、启用 Gzip 压缩
Gzip 能有效减小传输文件体积,特别是对于 CSS、JS 等文本类资源,压缩后可大幅降低下载时间。
1、打开 Nginx 配置文件,默认路径为 /usr/local/etc/nginx/nginx.conf。
立即学习“前端免费学习笔记(深入)”;
2、在 http 或 server 块中添加以下指令:
gzip on;
gzip_types text/css application/javascript;
gzip_vary on;
gzip_comp_level 6;
3、保存并退出编辑器,执行 nginx -s reload 重新加载配置。
二、配置静态资源缓存
通过设置 HTTP 缓存头,可以让浏览器缓存 CSS 文件,减少重复请求,从而加快页面渲染速度。
1、进入 server 块中,针对静态资源路径添加 location 配置:
location ~* .css$ {
expires 1y;
add_header Cache-Control “public, immutable”;
}
2、确保该 location 被正确包含在监听端口的 server 中。
3、修改完成后重启 Nginx 服务以应用更改:sudo nginx -s reload。
三、使用内存映射提升读取效率
Nginx 支持使用 sendfile 指令将文件直接从磁盘传输到网络接口,减少用户态与内核态之间的数据拷贝,提高传输性能。
1、在 http 块中启用 sendfile 功能:
sendfile on;
2、同时建议开启 TCP_NOPUSH 以优化大数据块发送:
tcp_nopush on;
3、保存配置并重新加载 Nginx 服务。
四、调整 worker 进程数以充分利用 CPU
默认情况下,Nginx 可能只启动一个 worker 进程,无法充分利用多核处理器优势。调整进程数可提升并发处理能力。
1、查找当前 CPU 核心数,可在终端运行:sysctl -n hw.ncpu。
2、在 nginx.conf 的全局块中设置 worker_processes 为实际核心数:
worker_processes 8;(根据实际输出调整数值)
3、保存后执行 nginx -s reload 应用变更。
以上就是Mac nginx反向代理,CSS加载快到让你尖叫!的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1595386.html
微信扫一扫
支付宝扫一扫