如何让 Apache2 解析 .htaccess 中的 Header 指令(无错误)?

如何让 Apache2 解析 .htaccess 中的 Header 指令(无错误)?

我收到页面加载时出现 500 内部服务器错误,我相信这是由于 Apache 未配置为允许的指令造成的。

我将 AllowOverride 设置为全部,并设置一个 .htaccess 文件,其中包括:

<FilesMatch "\.(eot|ico|pdf|flv|jpg|jpeg|png|gif|svg|swf|ttf|woff)$">
Header set Cache-Control "max-age=31536000, public"
Header set Expires "Wed, 23 Apr 2014 17:00:01 UTC"
</FilesMatch>

/var/log/apache2/error.log 包含:

[Sat Jul 20 15:12:36 2013] [alert] [client 24.15.83.241] /home/jonathan/.htaccess: Invalid command 'Header', perhaps misspelled or defined by a module not included in the server configuration

我需要指定什么以便 Apache2 正确处理“Header”指令?

答案1

使用 apache2,只需运行a2enmod headers,然后sudo service apache2 restart它将自动安装 headers 模块。

答案2

您需要添加如下一行:

LoadModule headers_module modules/mod_headers.so

httpd.conf需要添加对此的支持。在 Ubuntu 和类似系统中,您可以这样做a2enmod headers,它会在您的配置中自动启用它。

相关内容