Nginx 是一个高性能的 HTTP 和反向代理服务器,它可以用来优化静态资源的传输。以下是一些建议和技巧,可以帮助你优化 Nginx 上的静态资源:
- 启用 Gzip 压缩:Gzip 可以减小传输文件的大小,从而减少传输时间。在 Nginx 配置文件中启用 Gzip 压缩:
http {
gzip on;
gzip_comp_level 5;
gzip_min_length 256;
gzip_proxied any;
gzip_vary on;
gzip_types
application/atom+xml
application/javascript
application/json
application/ld+json
application/manifest+json
application/rss+xml
application/vnd.geo+json
application/vnd.ms-fontobject
application/x-font-ttf
application/x-web-app-manifest+json
application/xhtml+xml
application/xml
font/opentype
image/bmp
image/svg+xml
image/x-icon
text/cache-manifest
text/css
text/plain
text/vcard
text/vnd.rim.location.xloc
text/vtt
text/x-component;
}
- 使用 Cache-Control:通过设置 Cache-Control 头部,可以控制浏览器缓存静态资源的时间。在 Nginx 配置文件中设置 Cache-Control:
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 30d;
add_header Cache-Control "public";
}
- 启用浏览器缓存:通过设置 ETag 和 Last-Modified 头部,可以让浏览器缓存静态资源。在 Nginx 配置文件中启用浏览器缓存:
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
etag on;
if_modified_since exact;
}
- 使用 sendfile:sendfile 可以减少文件描述符的使用,提高静态文件的传输性能。在 Nginx 配置文件中启用 sendfile:
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
}
- 使用 keepalive:keepalive 可以减少 TCP 连接的建立和关闭次数,提高静态文件的传输性能。在 Nginx 配置文件中启用 keepalive:
http {
keepalive_requests 100;
}
-
使用 CDN:将静态资源部署到 CDN(内容分发网络)上,可以让用户从离他们最近的服务器获取资源,从而减少延迟和提高加载速度。
-
减少重定向:尽量避免不必要的重定向,因为重定向会增加额外的 HTTP 请求,从而影响性能。
-
合并和压缩 CSS 和 JavaScript 文件:将多个 CSS 或 JavaScript 文件合并成一个文件,可以减少 HTTP 请求的数量。同时,可以使用工具(如 UglifyJS 或 Clean-CSS)压缩这些文件,以减小文件大小。
-
使用 HTTP/2:HTTP/2 支持多路复用,可以在一个 TCP 连接上同时传输多个资源,从而减少连接建立和关闭的开销。在 Nginx 配置文件中启用 HTTP/2:
server {
listen 443 ssl http2;
...
}
通过实施这些优化措施,你可以显著提高 Nginx 上静态资源的传输性能。
以上就是关于“Nginx如何优化静态资源”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm