This page documents the configuration of mod_wcm.so for Fedora Core and versions 7 (or later) of RedHat, CentOS and Oracle Linux.
For information on configuring mod_wcm.so on versions 5 & 6 of RedHat, CentOS or Oracle Linux see Apache mod_wcm.so configuration for versions 5 & 6 of RedHat, Oracle Linux, & CentOS
The mod_wcm_24.so is compatible with the 64-bit, prefork MPM, version of Apache 2.4 that is available as an installable package for the RedHat family of Linux systems. 32-bit versions of Apache 2.4 are not supported nor are versions of Apache configured to use the event or worker MPMs.
To start and stop Apache, use the systemctl start|stop httpd.service command. Operating systems that use systemd, eg Oracle Linux 7 & Fedora Core 18 (or later), may require the httpd service to be enabled by running
$ systemctl enable httpdso that the Apache server starts during boot.
On modern distrubutions, such as Fedora Core 27 (or later) & Oracle Linux 8, the default configuration for Apache 2.4 is to use the event MPM, which is not compatible with mod_wcm_24.so. This can be easily changed to use the prefork MPM by commenting out the LoadModule entry for modules/mod_mpm_event.so in /etc/httpd/conf.modules.d/00-mpm.conf and then uncommenting the entry for modules/mod_mpm_prefork.so
The configuration of Apache has been separated out from /etc/httpd/conf/httpd.conf into a set of include files that reside in the /etc/httpd/conf.d & /etc/httpd/conf.modules.d/ directories. The /etc/httpd/conf.modules.d directory contains configuration files that just define what modules Apache loads when it starts. The names of configuration files are usually prefixed with a two digit number so that they are loaded in a specific sequence. For example 00-mpm.conf will be loaded before 01-cgi.conf so that latter can choose which module to load depending on which MPM had been enabled in the former. As mod_wcm.so does not provide a dependency for other Apache modules it can be loaded last, so a name of 99-wcm.conf can be used. The file just needs to contain a single LoadModule directive:-
LoadModule wcm_module modules/mod_wcm.so
Module pathnames are relative to the /etc/httpd directory.
The remainder of the configuration for mod_wcm.so resides in a file in the /etc/httpd/conf.d directory. For example, mod_wcm.so's configuration would be stored in the file /etc/httpd/conf.d/k8.conf:
# Configuration of mod_wcm.so for K8 <Location /K8_CVS6 > Order allow,deny Allow from all # mod_filter and mod_deflate must be loaded AddOutputFilterByType deflate text/plain text/html text/css text/xml application/soap+xml </Location> <Location /K8_CVS6/KCMLTest > SetHandler kcml-soap KcmlSOAPServers localhost:790 </Location>
As /etc/httpd/conf.modules.d/99-wcm.conf has done the LoadModule directive for mod_wcm.so then multiple configuration files for mod_wcm.so can used in /etc/httpd/conf.d/. So another application's configuration can be added to Apache, without affecting the above configuration, by creating the configuration file /etc/httpd/conf.d/rev8.conf with the contents:-
# Configuration of mod_wcm.so for Rev8 <Location /Rev830 > Order allow,deny Allow from all # mod_deflate must be loaded AddOutputFilterByType deflate text/plain text/html text/css text/xml application/soap+xml </Location> <Location /Rev830/CLOCKSERVER > SetHandler kcml-soap KcmlSOAPServers localhost:790 </Location>
and then restarting Apache with the command
$ systemctl restart httpd.service