86

我有一个 htaccess 文件,它可以在主机上完美运行,但是当我把它放在本地时,它显示了这个错误:

内部服务器错误

服务器遇到内部错误或配置错误,无法完成您的请求。

请联系服务器管理员 admin@localhost 并告知他们错误发生的时间,以及您所做的任何可能导致错误的事情。

服务器错误日志中可能提供有关此错误的更多信息。

我在错误日志文件中发现了这个警报:

[2012 年 4 月 17 日星期二 10:02:25] [警报] [客户端 127.0.0.1] D:/wamp/www/jivan/sql/.htaccess: 无效的命令“标题”,可能拼写错误或由未包含在服务器配置

这是我的 htaccess 文件代码:

  RewriteEngine On
AddDefaultCharset utf-8
RewriteRule ^([0-9-]+)/keyword_show.html$ keyword_show.php?keyword_id=$1
RewriteRule ^page_(.*).html$  page.php?url=$1
RewriteRule ^([0-9-]+)/(.*)/(.*)/(.*).html$ $2.php?advertisement_cat=$1&id=$3&pagenumber=$4
RewriteRule ^([0-9-]+)/(.*)/(.*).html$ $2.php?advertisement_cat=$1&pagenumber=$3
RewriteRule ^([0-9-]+)/(.*).html$ $2.php?advertisement_cat=$1
# cache images and flash content for one month
<FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>

# cache text, css, and javascript files for one month
<FilesMatch ".(js|css|pdf|txt)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>

我的本地服务器由 wamp 运行,我也启用了重写模块!!!

那么问题是什么?!

4

6 回答 6

129

Header指令在mod_headersapache 模块中。您需要确保将该模块加载到 apache 服务器中。

于 2012-04-17T05:44:37.627 回答
104

启用 HEADERS 模块的步骤

$ cd /etc/apache2/mods-available
$ sudo a2enmod headers
$ /etc/init.d/apache2 restart
于 2013-10-22T06:09:54.870 回答
35

在您的命令行上:

安装 mod_headers

sudo a2enmod headers

然后重启apache

service apache2 restart
于 2014-05-20T12:23:17.770 回答
12

试试这个:

<IfModule mod_headers.c> Header set [your_options] </IfModule>

安装/启用后是否重新启动了 WAMP?

于 2012-04-17T05:45:57.757 回答
6

在 Ubuntu/Debian 机器中,您可以简单地运行以下命令:

sudo ln -s /etc/apache2/mods-available/headers.load /etc/apache2/mods-enabled/

并且应该全部设置......

于 2014-05-01T21:42:52.080 回答
0

这个答案对我有用

<IfModule mod_headers.c> Header set [your_options] </IfModule>

我该怎么做

于 2019-06-11T11:14:20.960 回答