问题
I have a htaccess file that it work perfectly on host but when I put it on local ,it shows me this error:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, admin@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
I found this alert in error log file :
[Tue Apr 17 10:02:25 2012] [alert] [client 127.0.0.1] D:/wamp/www/jivan/sql/.htaccess: Invalid command 'Header', perhaps misspelled or defined by a module not included in the server configuration
this is my htaccess file code:
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>
my local server run by wamp and I enabled rewrite module too!!!
so what`s the prob?!!
回答1:
the Header
directive is in the mod_headers
apache module. You need to make sure that module is loaded into the apache server.
回答2:
Steps to enable HEADERS modules
$ cd /etc/apache2/mods-available
$ sudo a2enmod headers
$ /etc/init.d/apache2 restart
回答3:
On your command line:
Install mod_headers
sudo a2enmod headers
and then restart apache
service apache2 restart
回答4:
Try this:
<IfModule mod_headers.c> Header set [your_options] </IfModule>
Have you restarted WAMP after installing / enabling?
回答5:
In an Ubuntu/Debian Machine you can simply run this command:
sudo ln -s /etc/apache2/mods-available/headers.load /etc/apache2/mods-enabled/
and should be all set.....
回答6:
This answer works for me
<IfModule mod_headers.c> Header set [your_options] </IfModule>
来源:https://stackoverflow.com/questions/10185717/internal-server-error-htaccess