Linux:在CentOS/RHEL6上安装file_cache_module.so

时间:2020-02-23 14:39:49  来源:igfitidea点击:

从CentOS/RedHat Enterprise Linux 6开始,Apache二进制文件也不再提供通常称为" MMapFile"的" mod_file_cache"。
文件缓存模块将文件页面静态映射到内存中。

根据Apache文档,该模块仍处于试验阶段,该文档可能解释了为什么不包含它,即使它已包含在CentOS/RHEL5中也是如此。

当您的配置中包含" MMapFile"语句并且系统中缺少模块时,尝试重新加载或者重新启动apache时,可能会收到以下错误输出:

Invalid command 'MMapFile', perhaps misspelled or defined by a module not included in the server configuration

您可以将模块添加到系统中,以保留库存二进制软件包,并避免混合第三方RPM存储库。
只需按照以下步骤。

1.安装所需的开发包:

yum install httpd-devel gcc

2.获取当前正在运行的Apache版本:

rpm -qv httpd

(CentOS/RHEL 6.5应该输出以下内容:httpd-2.2.15-30.el6.centos.x86_64)

3.从档案下载存储库中获取与您的运行版本匹配的Apache源:

http://archive.apache.org/dist/httpd/

(此示例需要以下程序包:http://archive.apache.org/dist/httpd/httpd-2.2.15.tar.gz)

cd /usr/local/src
wget http://archive.apache.org/dist/httpd/httpd-2.2.15.tar.gz

4.转到模块目录:

cd httpd-2.2.15/modules/cache

5.构建模块:

apxs -i -a -c mod_file_cache.c

完成后,该模块已编译并添加到httpd.conf中。

6.检查您的配置:

service httpd configtest

如果没有错误输出,则重新加载配置:

service httpd reload

注意:(可选)如果不再需要它们,则可以按如下所示删除我们在一开始就安装的开发包及其依赖项:

yum remove gcc httpd-devel apr-devel apr-util-devel cyrus-sasl-devel expat-devel openldap-devel