Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

We now need to tell Apache to talk to Tomcat over AJP. You should note that since OS X Leopard (10.5), the Apache config and modules have been relocated. This guide is for Leopard and for Apache 2.2 (default on Leopard). Also note that in Leopard, the necessary modules are already installed into /usr/libexec/apache2. Thanks Apple (smile)!

  1. Navigate to your Apache directory:
    Code Block
    cd /etc/apache2
    
  2. Open httpd.conf and scroll to the large LoadModule section. Ensure you have the following uncommented:
    Code Block
    LoadModule proxy_module libexec/apache2/mod_proxy.so
    LoadModule proxy_ajp_module libexec/apache2/mod_proxy_ajp.so
    
  3. In my httpd.conf, right at the bottom there is a line:
    Code Block
    Include /private/etc/apache2/other/*.conf
    
    This will load in all other config files in the other/ directory. In the next step we will create an ajp.conf file and this line will load it. If you don't have this line, create it, or a similar line to load in the ajp.conf file we create in the next step. Save and close httpd.conf
  4. Create an ajp.conf file. You could put the configuration for AJP in the main httpd.conf file but I prefer to keep things separated.
    Code Block
    sudo touch other/ajp.conf
    
  5. Open ajp.conf and paste in the following:
    Code Block
    ProxyRequests Off
    <Proxy *>
            Order deny,allow
            Deny from all
            Allow from localhost
    </Proxy>
    ProxyPass 		/ ajp://localhost:8009/
    ProxyPassReverse 	/ ajp://localhost:8009/
    
  6. Adjust the port to be whatever the port is in your Tomcat AJP connector. Save and close.
  7. Once again, ensure you have the line in httpd.conf that is going to load this ajp.conf file.
  8. Restart Apache:
    Code Block
    sudo httpd -k restart
    
    You should get no output, signalling the config is ok.

...