Java Mailing List Archive

http://www.junlu.com/

Home » Home (12/2007) » Tomcat Users »

Getting Apache2 forwarding to tomcat5

Dan Chesmore

2005-10-11

Replies:

I have read about 25 different websites on getting this setup. I have
read through this list trying to find the answer I need. I have spent
the last 2 days and soon 3rd day trying to get this working. I need
Apache to forward port 80 and 443 requests to tomcat to 8080 and 8443. I
am working on the non-ssl right now. I get an error in Apache error_log
saying:
[error] uriEnv.init() map to invalid worker /*.jsp-0
ajp13:localhost:8009
[error] uriEnv.init() map to invalid worker /patientC
onnect-1 ajp13:localhost:8009

Let me give a bit of history and config files.
This is running on SLES9 x86-64 version.
Apache and tomcat and the connectors are from RPMs that came with SuSE.
Everything is installed in SuSE default install location.



httpd.conf.local:

LoadModule jk2_module /usr/lib64/apache2/mod_jk2.so

<Location "/*.jsp">
JkUriSet worker ajp13:localhost:8009
</Location>

<Location "/patientConnect">
JkUriSet worker ajp13:localhost:8009
</Location>


workers2.properties:

[logger]
level=DEBUG

[config:]
file=/etc/apache2/workers2.properties
debug=0
debugEnv=0

[uriMap:]
info=Maps the requests. Options: debug
debug=1

[shm]
info=Scoreboard. Required for reconfiguration and status with
multiprocess serve
rs
file=/usr/share/tomcat/logs/jk2.shm
size=1048576
debug=0
disabled=0

[workerEnv:]
info=Global server options
timing=1
debug=0

[status:]
info=Status worker, displays runtime informations

[uri:patientconnect.truchart.com/jkstatus/*]
info=Display status information and checks the config file for changes.
group=status:

[channel.socket:localhost:8009]
info=Ajp13 forwarding over socket

# Define the worker
[ajp13:localhost:8009]
channel=channel.socket:localhost:8009

[uri:patientconnect.truchart.com/patientConnect/*]
info=patientConnect



Both the workers2.properties and the httpd.conf.local are located
in /etc/apache2 directory.

In the /usr/share/tomcat/conf/ directory is the jk2.properties and the
server.xml

jk2.properties:

## THIS FILE MAY BE OVERRIDEN AT RUNTIME. MAKE SURE TOMCAT IS STOPED
## WHEN YOU EDIT THE FILE.

## COMMENTS WILL BE _LOST_

## DOCUMENTATION OF THE FORMAT IN JkMain javadoc.

# Set the desired handler list
# handler.list=apr,request,channelJni
#
# Override the default port for the socketChannel
channelSocket.port=8009
# Default:
# channelUnix.file=${jkHome}/work/jk2.socket
# Just to check if the the config is working
# shm.file=${jkHome}/work/jk2.shm

# In order to enable jni use any channelJni directive
# channelJni.disabled = 0
# And one of the following directives:

# apr.jniModeSo=/opt/apache2/modules/mod_jk2.so


# If set to inprocess the mod_jk2 will Register natives itself
# This will enable the starting of the Tomcat from mod_jk2
# apr.jniModeSo=inprocess


and the server.xml that was modified:


  <!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 -->
  <Connector port="8080"
         maxThreads="150" minSpareThreads="25"
maxSpareThreads="75"
         enableLookups="false" redirectPort="8443"
acceptCount="100"
         debug="0" connectionTimeout="20000"
         disableUploadTimeout="true" />
  <!-- Note : To disable connection timeouts, set connectionTimeout
value
  to 0 -->

    <!-- Note : To use gzip compression you could set the following
properti
es :

                 compression="on"
                 compressionMinSize="2048"
                 noCompressionUserAgents="gozilla, traviata"
                 compressableMimeType="text/html,text/xml"
    -->


<!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
  <!--
  <Connector port="8443"
         maxThreads="150" minSpareThreads="25"
maxSpareThreads="75"
         enableLookups="false" disableUploadTimeout="true"
         acceptCount="100" debug="0" scheme="https" secure="true"
         clientAuth="false" sslProtocol="TLS" />
  -->

  <!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
  <Connector port="8009"
         enableLookups="false" redirectPort="8443" debug="0"
         protocol="AJP/1.3" />


  <!-- Define a Proxied HTTP/1.1 Connector on port 8082 -->
  <!-- See proxy documentation for more information about using this.
-->
<!--
  <Connector port="8082"
         maxThreads="150" minSpareThreads="25"
maxSpareThreads="75"
         enableLookups="false"
         acceptCount="100" debug="0" connectionTimeout="20000"
         proxyPort="80" disableUploadTimeout="true" />
-->

...

    <!-- Logger shared by all Contexts related to this virtual host.
By
        default (when using FileLogger), log files are created in
the "logs
"
        directory relative to $CATALINA_HOME. If you wish, you can
specify
        a different directory with the "directory" attribute.
Specify eith
er a
        relative (to $CATALINA_HOME) or absolute path to the
desired
        directory.-->
    <Logger className="org.apache.catalina.logger.FileLogger"
          directory="logs" prefix="localhost_log." suffix=".txt"
       timestamp="true"/>

    <Context path="/patientConnect"
       docBase="/usr/local/mediture/gateway_patient_connect/webapp"
debug="
0"
                reloadable="true" crossContext="true"/>
    <Context path="" docBase="/srv/www/htdocs" debug="0"
reloadable="true" cr
ossContext="true"/>

</Host>


Thank you for any help or direction you can place me. If you think I
should have read something first then tell me to read it. I may have
skipped over it or I may have read it. I have seen a lot of different
ways of doing that same thing and tried all so I may be missing up a few
of them. Again thank you.



--
Dan Chesmore
Systems Admin
Mediture
7700 Equitable Dr
Suite 100
Eden Prairie, MN 55344
952-400-0315
www.mediture.com


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@(protected)
For additional commands, e-mail: tomcat-user-help@(protected)

©2008 junlu.com - Jax Systems, LLC, U.S.A.