我有一个htaccess文件,它可以在主机上完美运行但是当我把它放在本地时,它会显示我的错误:
内部服务器错误
服务器遇到内部错误或配置错误 无法完成您的请求。
请联系服务器管理员admin @ localhost并通知 他们发生错误的时间,以及你可能做过的任何事情 可能导致错误。
有关此错误的详细信息可能在服务器错误中可用 日志中。
我在错误日志文件中找到了此警告:
[Tue Apr 17 10:02:25 2012] [alert] [client 127.0.0.1] D:/wamp/www/jivan/sql/.htaccess:无效的命令'Header',可能拼写错误或由模块定义未包含在服务器配置中
这是我的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运行,我也启用了重写模块!!!
那么问题是什么?!!
答案 0 :(得分:121)
Header
指令位于mod_headers
apache模块中。您需要确保将模块加载到apache服务器中。
答案 1 :(得分:88)
启用HEADERS模块的步骤
$ cd /etc/apache2/mods-available
$ sudo a2enmod headers
$ /etc/init.d/apache2 restart
答案 2 :(得分:33)
在命令行上:
安装mod_headers
sudo a2enmod headers
然后重启apache
service apache2 restart
答案 3 :(得分:11)
试试这个:
<IfModule mod_headers.c> Header set [your_options] </IfModule>
安装/启用后你重启了WAMP吗?
答案 4 :(得分:6)
在Ubuntu / Debian机器中,您只需运行此命令:
sudo ln -s /etc/apache2/mods-available/headers.load /etc/apache2/mods-enabled/
并且应该全部设置.....
答案 5 :(得分:0)
此答案对我有用
<IfModule mod_headers.c> Header set [your_options] </IfModule>