Apache fails to load with "Invalid command 'JkMount'"

  • 3810431
  • 30-Oct-2007
  • 27-Apr-2012

Environment

Novell Apache on NetWare 2.0.x

...and a tomcat dependant web application (not limited to the following)...

Novell GroupWise WebAccess
Novell iManager

Situation

Apache fails to load, revealing the error in the Apache error log (SYS:/Apache2/logs/startup.err) :

Syntax error on line 5 of SYS:/Apache2/conf/GWApache2.conf:
Invalid command 'JkMount', perhaps mis-spelled or defined by a module not included in the server configuration

Resolution

Locate the apache configuration file (by default, SYS:/Apache2/conf/httpd.conf) that Apache uses to load, and open this for editing (do NOT use Windows Notepad). Follow the procedure :
  1. Locate the string "LoadModule" in the configuration file. This should be a list of "LoadModule" lines loading various Apache extensions.

    *** If this list is missing, check the number of lines in the configuration file. Anything less than 200 is typically an indication of a failed install by a web application, or a failed upgrade. In this case, copy the httpd_default.conf to httpd.conf, and ensure that it is populated with the LoadModule statements. ***
  2. At the end of the list of LoadModule statements, add a line for loading the jk_module :
    LoadModule jk_module modules/mod_jk.nlm
  3. If you are missing the following lines, add them below the LoadModule (and prior to any "Include" lines, or lines containing"jk"), add the following (unless the lines exist in the httpd.conf file already) :
    <
    IfModule mod_jk.c>
    JkWorkersFile "sys:/adminsrv/conf/mod_jk/workers.properties"
    JkLogFile "logs/mod_jk.log"
    JkLogLevel error
    <
    /IfModule>
  4. Clear the Apache log files (SYS:/Apache2/logs).
  5. Start Apache using "AP2WEBUP".

Additional Information

Apache itself does not run Java-based web applications. As a result of this limitation, Tomcat is also run to house these services, and Apache must pass the requests to Tomcat. In these cases, Apache must be instructed to pass the requests to the Tomcat service. This is done using the "JkMount" configuration option.