Web 服务器Static Files
静态资源托管 是什么?
图片、JS、CSS 由 Nginx 直接返回,不经过应用
类比:自助货架,拿了就走不用找店员
为什么重要
静态文件占页面请求数的 80% 以上,交给应用处理会浪费大量线程和内存。Nginx 用 sendfile 零拷贝直接从磁盘发到网卡,几乎不占 CPU。
关键配置
这三件事配好,静态资源的体验就到位了。
- sendfile on; tcp_nopush on; 减少数据拷贝
- expires 30d; 强缓存,配合文件名哈希做版本控制
- gzip on; 对 js/css/json 压缩,图片和视频不要压
- try_files $uri $uri/ /index.html; 支持前端路由
大文件与下载
大文件下载建议用 X-Accel-Redirect 让 Nginx 直接发文件,应用只做鉴权;视频用 HLS 切片或交给对象存储 + CDN。