我没有很大的机会研究这个主题,但我想我会问这个问题,看看我们是否可以在这里创建一个关于这个主题的知识库.
1)使用子域将强制客户端缓存,这是默认情况下还是客户端有一个简单的方法来禁用它?对我应该期望影响的用户比例更加好奇.
2)什么都将被缓存?图片?样式表?Flash SWF?JavaScript的?一切?
3)我记得你读过你必须在你的网址中使用子域名或www来实现这一点,这是正确的吗?(这是否意味着SO不会允许它?)
我计划最终将它集成到我的所有网站上,但首先我要尝试为Flash网站的网站做这个,所以我认为www.example.com网站将保持不变,而不是使用www. example.com/images,www.example.com/stylesheets,www.example.com/javascript,www.example.com/swfs我将创建指向它们的子域(img.example.com,css.example. com,js.example.com和swf.example.com) - 这是最好的行动方案吗?
对内容元素使用子域并不是强制缓存,而是欺骗浏览器打开比其他方式更多的连接.这可以加快页面加载时间.
这些元素的缓存完全取决于随该内容提供的HTTP标头.
对于CSS,JS等静态文件,服务器通常会告诉客户端文件何时被修改,这允许浏览器询问文件" If-Modified-Since "该时间戳.如何通过添加一些额外的缓存头来改进这一点的细节将取决于您使用的Web服务器.例如,使用Apache,您可以使用mod_expires模块设置Expires标头,或使用Header指令输出其他类型的缓存控制标头.
例如,如果你有一个包含css文件的子目录,并且想要确保它们被缓存至少一个小时,你可以在该目录中放置一个.htaccess来包含这些内容
ExpiresActive On ExpiresDefault "access plus 1 hours"