首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >HTTP头缓存

HTTP头缓存
EN

Webmasters Stack Exchange用户
提问于 2013-02-03 12:19:51
回答 1查看 326关注 0票数 4

我并不完全确定headers,但从我所读到的来看,在静态页面上设置一定程度的缓存也是件好事,我也不确定Transfer Encoding: chunked是否是一件好事。对于如何最好地使用我的PHP文件运行这个缓存,以便启用缓存,以及当内容更改时,它应该更新缓存,我没有找到明确的答案。希望我能在这方面得到帮助,我想知道以下哪一项是最好的,或者是任何建议:

代码语言:javascript
运行
复制
header('Cache-control: public');

代码语言:javascript
运行
复制
header('Cache-control: max-age=10');

耽误您时间,实在对不起。

EN

回答 1

Webmasters Stack Exchange用户

回答已采纳

发布于 2013-02-03 14:49:57

在大多数情况下,

和HTML是不好的

通常,缓存站点的PHP和HTML文件是不可取的,因为当您修改这些页面时,返回的访问者将不会获取更新的页面,除非对页面进行严格的刷新。Google建议缓存不太可能改变的图像和其他文件。所以当你编辑图片时,你应该把它们保存为一个新的文件名,这样你的访问者就可以得到新的文件,即使他们在媒体文件上有2周的缓存。

通过.HTACCESS

到期

控制过期的最佳方法之一是通过.htaccess文件使用Apache2过期模块。

下面是一些推荐的代码

代码语言:javascript
运行
复制
<IfModule mod_expires.c>
 ExpiresActive on

 ExpiresDefault      "access plus 1 month"
 ExpiresByType text/cache-manifest "access plus 0 seconds"
 #HTML PAGES
 ExpiresByType text/html "access plus 0 seconds"

 #DATA
 ExpiresByType text/xml "access plus 0 seconds"
 ExpiresByType application/xml "access plus 0 seconds"
 ExpiresByType application/json "access plus 0 seconds"

 #RSS
 ExpiresByType application/rss+xml "access plus 1 hour"

 #FAVICON (cannot be renamed)
 ExpiresByType image/x-icon "access plus 1 week"

 #MEDIA
 ExpiresByType image/gif "access plus 1 month"
 ExpiresByType image/png "access plus 1 month"
 ExpiresByType image/jpg "access plus 1 month"
 ExpiresByType image/jpeg "access plus 1 month"
 ExpiresByType video/ogg "access plus 1 month"
 ExpiresByType audio/ogg "access plus 1 month"
 ExpiresByType video/mp4 "access plus 1 month"
 ExpiresByType video/webm "access plus 1 month"

 #HTC TRICK
 ExpiresByType text/x-component "access plus 1 month"

 #WEBFONTS
 ExpiresByType font/truetype "access plus 1 month"
 ExpiresByType font/opentype "access plus 1 month"
 ExpiresByType application/x-font-woff   "access plus 1 month"
 ExpiresByType image/svg+xml "access plus 1 month"
 ExpiresByType application/vnd.ms-fontobject "access plus 1 month"

 #CSS AND JAVASCRIPT
 ExpiresByType text/css "access plus 1 year"
 ExpiresByType application/javascript "access plus 1 year"
 ExpiresByType text/javascript "access plus 1 year"

     <IfModule mod_headers.c>
         Header append Cache-Control "public"
     </IfModule>
 </IfModule>

在上面的例子中,您应该使用头附加缓存控制公共。

APACHE

如果您陷入困境或有关于类型的问题,请看一看:http://httpd.apache.org/docs/2.2/mod/mod_expires.html

票数 1
EN
页面原文内容由Webmasters Stack Exchange提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://webmasters.stackexchange.com/questions/43142

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档