我收到页面加载时出现 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
,它会在您的配置中自动启用它。