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

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

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

1. 前提条件

VPS中的ssh访问

已安装Apache2 Web服务器

基本的Linux知识(导航、打开文件、编辑文件和保存文件等)

2. 验证模块

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

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

apachectl -M | grep file_cache

输出应该是:

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模块:

a2enmod file_cache

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

nano /etc/apache2/apache2.conf

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

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

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

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

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

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

apachectl configtest

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

service apache2 restart

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

5.在CentOS上启用文件缓存

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

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

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

LoadModule file_cache_module modules / mod_file_cache.so

保存并关闭文件。

6. 编辑Apache主配置文件

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

nano /etc/httpd/conf/httpd.conf

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

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

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

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

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

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

apachectl configtest

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

systemctl restart httpd

我们介绍了如何检查服务器上是否启用了file_cache模块。介绍了如何在Ubuntu和CentOS上启用和配置Apache2以控制浏览器缓存。

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

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

相关推荐