配置Apache 2以控制Ubuntu和CentOS上的浏览器缓存

在本文中,我们将讨论 如何配置Apache2来控制浏览器缓存… 如果要减少服务器资源的消耗,提高性能,使用带宽,在网络中断期间使内容可用并为最终用户提供更快的体验,则需要使用允许所有这些的缓存。

缓存是一种临时存储请求最多的内容的方法,这样,对于该内容的未来请求将通过临时存储(缓存)比从主位置更快地得到满足。 通过使用缓存,您可以有效地重用以前接收的数据。 今天我们 在Apache 2上配置浏览器缓存控制… 开始吧。

1.先决条件

  • SSH访问VPS;
  • 安装了Apache2 Web服务器;
  • Linux的基本知识(导航,打开文件,编辑文件,保存文件等);

2.检查模块

通常我们的服务器已经启用了file_cache,这是管理浏览器缓存所必需的。 但是,我们需要确保我们的Apache2及其模块已安装并准备接受指令。 有一种简单的方法可以测试我们的模块。 要列出Apache模块,我们将使用apachectl命令,并使用grep命令显示模块和管道,以过滤结果并仅显示所需的模块。

我们可以使用以下命令检查file_cache模块:

apachectl -M | grep file_cache

输出应如下所示:

file_cache_module (shared)

如果执行这些命令后没有任何结果,或者只是空了,则说明未安装该模块。 您必须先安装它才能继续本教程。

3.启用文件缓存

配置Apache 2以控制浏览器缓存要使用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

最后收到 语法确定 您可以通过输入以下命令来重新启动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

你应该得到 “语法确定”消息这表示您的配置正确,您可以通过运行以下命令来重新启动Apache:

systemctl restart httpd

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

Sidebar