afsane
afsane

Reputation: 1919

Internal Server Error from htaccess caused by Invalid command 'Header'

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?!!

Upvotes: 92

Views: 76723

Answers (6)

Neo
Neo

Reputation: 561

If you are using WAMP server, do the following

  1. Left click on Wamp tray icon.
  2. Go to Apache -> Apache Modules.
  3. Enable 'headers_module' from the list of modules.
  4. Restart the wamp server or Restart All Services.

Upvotes: 3

Michael Slade
Michael Slade

Reputation: 13877

the Header directive is in the mod_headers apache module. You need to make sure that module is loaded into the apache server.

Upvotes: 136

Allahbakash.G
Allahbakash.G

Reputation: 1923

Steps to enable HEADERS modules

$ cd /etc/apache2/mods-available
$ sudo a2enmod headers
$ /etc/init.d/apache2 restart

Upvotes: 111

Amir Koklan
Amir Koklan

Reputation: 885

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.....

Upvotes: 6

totas
totas

Reputation: 10800

On your command line:

Install mod_headers

sudo a2enmod headers

and then restart apache

service apache2 restart

Upvotes: 37

Scott
Scott

Reputation: 285

Try this:

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

Have you restarted WAMP after installing / enabling?

Upvotes: 12

Related Questions