Apache: edit to .conf file produces "Invalid command 'Header'"

56,579

In order to use Header directive in apache you have to load mod_header module. You can test if module is loaded or not by :-

apache2ctl -M | grep headers_module

find / -name mod_headers.so

If it is loaded you will see something like :-

headers_module (shared)

/usr/lib/apache2/modules/mod_headers.so

If you see no output of find command than load that module directly in your apache conf file. Just append below line :-

LoadModule headers_module modules/mod_headers.so

Note :- mod_header is available as base module in apache. So you don't need to install it explicitly.

Issue following command :-

a2enmod headers

Restart web service

apache2ctl restart

Share:
56,579
Steve
Author by

Steve

Updated on July 09, 2022

Comments

  • Steve
    Steve almost 2 years

    In Magento CE, I'd like to install an add-on to Extendware Page Cache called Lightening Cache.

    It requires editing the Apache configuration inside the virtual host definition for the site, by adding:

    RewriteEngine On
    RewriteMap ewpchash prg:/home/.../shell/extendware/ewpagecache/apache/md5.php
    
    RewriteCond %{REQUEST_METHOD} !POST
    RewriteCond %{REQUEST_URI} !\.(js|css|png|jpg|jpeg|ico|gif)$ [NC]
    RewriteCond %{DOCUMENT_ROOT}%{SCRIPT_FILENAME} !-f
    RewriteCond ${ewpchash:%{HTTPS};~;%{HTTP_HOST};~;%{REQUEST_URI};~;%{QUERY_STRING};~;%{HTTP:Cookie};~;%{SCRIPT_FILENAME};~;%{REMOTE_ADDR};~;%{HTTP_USER_AGENT}} -f
    RewriteRule ^(.*)$ ${ewpchash:%{HTTPS};~;%{HTTP_HOST};~;%{REQUEST_URI};~;%{QUERY_STRING};~;%{HTTP:Cookie};~;%{SCRIPT_FILENAME};~;%{REMOTE_ADDR};~;%{HTTP_USER_AGENT}} [NC,L]
    <FilesMatch "\.(html)$">
         Header unset Cache-Control
         Header unset Expires
         Header append Expires "Thu, 19 Nov 1981 08:52:00 GMT"
         Header append Cache-Control "must-revalidate"
    </FilesMatch>
    

    I have added this to the bottom of /etc/apache2/sites-enabled/site.conf.

    When I run the command apachectl graceful, I receive the error:

    AH00526: Syntax error on line 53 of /etc/apache2/sites-enabled/site.conf: Invalid command 'Header', perhaps misspelled or defined by a module not included in the server configuration Action 'graceful' failed. The Apache error log may have more information.

    Site is running Apache 2.4

    Have I done something wrong?