有些需求,所以加了这个在Nginx单独网站配置文件里。
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|webp)$
{
expires 30d;
add_header Cache-Control “public”;
error_log /dev/null;
access_log /dev/null;
}
location ~ .*\.(js|css)?$
{
expires 7d;
add_header Cache-Control “public”;
error_log /dev/null;
access_log /dev/null;
在 Nginx 的配置文件中加入 add_header Cache-Control "public";
的作用是告诉浏览器和其他缓存代理(如 CDN)如何缓存响应的内容。具体来讲:
- Cache-Control 是HTTP头部的一个指令,用来控制HTTP缓存的行为。
- public 表示响应可以被任何缓存(浏览器缓存、CDN等)存储,即使是私人内容也可以被缓存。
具体意义:
- 更快的加载速度:浏览器或CDN可以从缓存中快速获取资源,减少服务器负担,提高页面加载速度。
- 节省带宽:缓存内容可以减少对服务器的请求,从而节省带宽和资源。
- 效率:对静态资源(如图片、CSS、JavaScript等)使用
public
缓存策略会提高整体用户体验,用户不必每次访问都向服务器请求相同的资源。
使用场景:
- 对于一些不常更改的静态资源,设置为公共缓存可以有效利用缓存机制。
- 若资源内容频繁变化,需要考虑使用其他的Cache-Control指令,例如
no-cache
或max-age
等,来控制缓存失效时间和更新策略。
注意事项:
- 在设置 Cache-Control 时,要确保理解该资源的更新频率以及用户对缓存的需求,以避免过时内容的展示。
- 确保合理配置的 Cache-Control 头部,能与其他可能存在的缓存策略(如 ETag、Last-Modified)共同工作。
总之,合理地设置 Cache-Control
可以显著提高网站性能和用户体验。
没有回复内容