I'm using XAMPP with Apache HTTP Server and Tomcat Add-On installed.
There's a default mod_jk.conf which is generated by Tomcat when starting it.
- But which file generates this mod_jk.conf file?
- How can I modify default values? By default, it looks like this: pastebin - mod_jk.conf.
- How does Apache HTTP Server reach this file? I can't see any reference to this file when looking into httpd.conf.
- When I put a VirtualHost in my httpd.conf file, and I put the line
JkMount /* ajp13
into it, Apache HTTP Server service can't start (causes a 7024 event id error in Event Viewer (with error code 1, but nothing specific), but puts no error messages intoerror.log
. The VirtualHost looks like this: pastebin - VirtualHost + JkMount. This way Apache HTTP Server can not start. If I comment out the lineJkMount /* ajp13
, it starts without a problem. BUT if I put the following line, which is the same as in mod_jk.conf, before the mentioned VirtualHost again, the service can start!
<IfModule !mod_jk.c> LoadModule jk_module "C:/xampp/tomcat/xampp/apache/modules/mod_jk.so" </IfModule>
Why do I have to put this line in again?
Why does that happen, that the http://localhost/example
does work, so this query is redirected to AJP13, but I have to put the LoadModule line in again in another file?
EDIT: I don't have a clue why, I surely modified something, but now /example doesn't work either... And the config above gives a 500 Internal Server Error.
I have to warn that I'm not familiar with XAMPP.
You can trace from the script that starting Tomcat (
startup.bat
, maybe)Try to start Apache before starting Tomcat. Another workaround is edit and mark it as read-only.
Insert a
Include
directive in the Apache configuration file, something like this:Include /tomcat/conf/mod_jk.conf
4 + 5. You haven't included
mod_jk.conf
, so themod_jk.so
wasn't load, therefore, Apache cannot understand theJkMount
option.Take a look at Apache error log, it will tell you more details.