|
|
51CTO旗下网站
|
|
移动端

通过配置Apache 2以控制浏览器缓存

我们在本文中将讨论如何配置Apache2以控制浏览器缓存。如果你想减少服务器资源的消耗,提高响应速度、带宽利用率以及网络中断期间的内容可用性,为最终用户提供更好的体验,那么就需要使用实现这一切的缓存。

作者:布加迪编译来源:51CTO|2018-10-23 08:17

【51CTO.com快译】我们在本文中将讨论如何配置Apache2以控制浏览器缓存。如果你想减少服务器资源的消耗,提高响应速度、带宽利用率以及网络中断期间的内容可用性,为最终用户提供更好的体验,那么就需要使用实现这一切的缓存。

缓存是用于临时存储最常请求的内容的一种方法,以便临时存储(缓存)可以比主存储更快速地处理将来对该内容的请求。如果使用缓存,你可以高效地重复使用以前检索的数据。今天我们在Apache 2上配置浏览器缓存控制。开始吧。

1. 前提条件

  • VPS中的ssh访问
  • 已安装Apache2 Web服务器
  • 基本的Linux知识(导航、打开文件、编辑文件和保存文件等)

2. 验证模块

通常,我们的服务器已经包含控制浏览器缓存所需的file_cache。然而,我们需要确保Apache2与该模块已一并安装,并准备接受指令。有一种简单的方法来验证我们的模块。想列出Apache模块,我们可使用apachectl命令列出模块,并使用grep命令过滤掉结果,仅显示我们需要的模块。

我们可以使用以下命令来验证file_cache模块:

  1. apachectl -M | grep file_cache 

输出应该是:

  1. file_cache_module (shared) 

如果在运行这些命令后输出里面什么内容都没有,或者一片空白,这表明该模块未安装。需要先安装模块才能继续本教程。

3. 启用文件缓存

想使用file_cache模块的功能,先要启用它。如果你运行CentOS 7或Ubuntu 16.04,该模块在默认情况下在Apache中未配置,因此该模块不会加载。我们会向你展示如何在CentOS 7和Ubuntu 16.04中配置和启用file_cache模块。

4. 在Ubuntu上启用文件缓存

如果你使用Ubuntu 16.04,可以使用以下命令来启用file_cache模块:

  1. a2enmod file_cache 

下一步是编辑Apache主配置文件。输入以下命令,打开Apache主配置文件:

  1. nano /etc/apache2/apache2.conf 

想使用CacheFile,请在配置文件中添加这一行:

  1. CacheFile /var/www/html/index.html /var/www/html/somefile.index 

如果你想改而使用MMapFile指令,应在配置文件中添加这一行:

  1. MMapFile /var/www/html/index.html /var/www/html/somefile.index 

应该没有理由为相同的文件同时配置CacheFile和MMapFile,但也可以针对不同的文件使用它们。完成配置后,保存并关闭文件。

可以使用以下命令来检查Apache配置文件有无语法错误:

  1. apachectl configtest 

最后你看到语法OK后,可以通过键入以下命令来重启Apache:

  1. service apache2 restart 

Apache重启后,就可以开始在已配置的文件上使用file_cache模块了。

5.在CentOS上启用文件缓存

如果是CentOS 7,我们将在/etc/httpd/conf.modules.d目录中创建一个名为00-cache的文件:

  1. nano /etc/httpd/conf.modules.d/00-cache.conf 

在新的配置文件中插入以下行:

  1. LoadModule file_cache_module modules / mod_file_cache.so 

保存并关闭文件。

6. 编辑Apache主配置文件

现在你应该编辑Apache主配置文件。使用此命令用nano编辑器打开Apache主配置文件:

  1. nano /etc/httpd/conf/httpd.conf 

如果你想使用CacheFile指令来处理缓存,应在Apache配置文件中插入以下行:

  1. CacheFile /var/www/html/index.html /var/www/html/somefile.index 

如果你想改而使用MMapFile指令,应在配置文件中添加以下行:

  1. MMapFile /var/www/html/index.html /var/www/html/somefile.index 

实际上,不需要为相同的文件同时配置CacheFile和MMapFile指令,但是可以在配置文件中将它们用于一组不同的文件。

完成配置后,保存并关闭文件。可以使用以下命令来检查Apache配置文件有无语法错误:

  1. apachectl configtest 

应该会收到语法OK消息,这意味着配置正确,可以执行以下命令来重启Apache:

  1. systemctl restart httpd 

在本教程的第一部分中,我们介绍了如何检查服务器上是否启用了file_cache模块。在第二部分中,我们介绍了如何在Ubuntu和CentOS上启用和配置Apache2以控制浏览器缓存。

当然,如果你使用Linux VPS主机服务,不必配置Apache2以控制浏览器缓存,在这种情况下,只要请专家级Linux管理员为你执行此操作。他们随时待命,可立即处理你的请求。

原文标题:Configure Apache 2 to Control Browser Caching

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

【编辑推荐】

  1. 如何保护基础架构免受DNS缓存中毒攻击
  2. 「系统架构」缓存与数据库的数据一致性方案介绍
  3. 一文读懂前端缓存
  4. 以Redis为例,详谈分布式系统缓存的细枝末节
  5. 怎样使用主流缓存更新策略来减少性能消耗?
【责任编辑:武晓燕 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

跨越网络工程师必备训练

本书是根据全国计算机技术与软件专业资格(水平)考试“网络工程师级考试大纲”编写的考试辅导用书。全书主体按考试大纲的章节编排,分上、...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊