###############################################################################
#                     Apache JServ Configuration File                         #
###############################################################################

# Note: this file should be appended or included into your httpd.conf

# Tell Apache on win32 to load the Apache JServ communication module
#LoadModule jserv_module modules/ApacheModuleJServ.dll

# Tell Apache on Unix to load the Apache JServ communication module
# For shared object builds only!!!
@LOAD_OR_NOT@LoadModule jserv_module @LIBEXECDIR@/mod_jserv.so

# Whether Apache must start JVM or not (On=Manual Off=Autostart)
# Syntax: ApJServManual [on/off]
# Default: "Off"
ApJServManual off

# Properties filename for Apache JServ in Automatic Mode. 
# In manual mode this directive is ignored
# Syntax: ApJServProperties [filename]
# Default: "./conf/jserv.properties"
ApJServProperties @EXAMPLE_DIR@/jserv.properties

# Log file for this module operation relative to Apache root directory. 
# Set the name of the trace/log file.  To avoid possible confusion about
# the location of this file, an absolute pathname is recommended.
#
# This log file is different than the log file that is in the 
# jserv.properties file. This is the log file for the C portion of Apache 
# JServ.
#
# On Unix, this file must have write permissions by the owner of the JVM 
# process. In other words, if you are running Apache JServ in manual mode
# and Apache is running as user nobody, then the file must have its
# permissions set so that that user can write to it.
# Syntax: ApJServLogFile [filename]
# Default: "./logs/mod_jserv.log"
# Note: when set to "DISABLED", the log will be redirected to Apache error log
ApJServLogFile @JSERV_LOG@/mod_jserv.log

# Protocol used by this host to connect to Apache JServ
# (see documentation for more details on available protocols)
# Syntax: ApJServDefaultProtocol [name]
# Default: "ajpv12"
ApJServDefaultProtocol ajpv12

# Default host on which Apache JServ is running
# Syntax: ApJServDefaultHost [hostname]
# Default: "localhost"
#ApJServDefaultHost 

# Default port that Apache JServ is listening to
# Syntax: ApJServDefaultPort [number]
# Default: protocol-dependant (for ajpv11 protocol this is "8007")
ApJServDefaultPort 8007

# The amount of time to give to the JVM to start up as well
# as the amount of time to wait to ping the JVM to see if it
# is alive. Slow or heavily loaded machines might want to 
# increase this value.
# Default: 10 seconds
# ApJServVMTimeout 10

# Passes parameter and value to specified protocol.
# Syntax: ApJServProtocolParameter [name] [parameter] [value]
# Default: NONE
# Note: Currently no protocols handle this. Introduced for future protocols.

# Apache JServ secret key file relative to Apache root directory.
# Syntax: ApJServSecretKey [filename]
# Default: "./conf/jserv.secret.key"
# Warning: if authentication is DISABLED, everyone on this machine (not just
# this module) may connect to your servlet engine and execute servlet 
# bypassing web server restrictions. See the documentation for more information
ApJServSecretKey DISABLED

# Mount point for Servlet zones
# (see documentation for more information on servlet zones)
# Syntax: ApJServMount [name] [jserv-url]
# Default: NONE
# Note: [name] is the name of the Apache URI path to mount jserv-url on
#       [jserv-url] is something like "protocol://host:port/zone"
#  If protocol, host or port are not specified, the values from 
#  "ApJServDefaultProtocol", "ApJServDefaultHost" or "ApJServDefaultPort" 
#  will be used. 
#  If zone is not specified, the zone name will be the first subdirectory of
#  the called servlet.
# Example: "ApJServMount /servlets /myServlets"
#  if user requests "http://host/servlets/TestServlet"
#  the servlet "TestServlet" in zone "myServlets" on default host
#  thru default protocol on defaul port will be requested
# Example: "ApJServMount /servlets ajpv11://localhost:8007"
#  if user requests "http://host/servlets/myServlets/TestServlet"
#  the servlet "TestServlet" in zone "myServlets" will be requested
# Example: "ApJServMount /servlets ajpv11://jserv.mydomain.com:15643/myServlets"
#  if user requests "http://host/servlets/TestServlet" the servlet 
#  "TestServlet" in zone "myServlets" on host "jserv.mydomain.com" using 
#  "ajpv11" protocol on port "15643" will be executed
ApJServMount /example /example
ApJServMount /servlets /example
ApJServMount /servlet /example

# Whether <VirtualHost> inherits base host mount points or not
# Syntax: ApJServMountCopy [on/off]
# Default: "On"
# Note: This directive is meaninful only when virtual hosts are being used
ApJServMountCopy on

# Executes a servlet passing filename with proper extension in PATH_TRANSLATED 
# property of servlet request.
# Syntax: ApJServAction [extension] [servlet-uri]
# Defaults: NONE
# Notes: This is used for external tools such as JSP (Java Servlet Pages), 
#  GSP (GNU Server Pages) or Java server side include.
#ApJServAction .jsp /servlets/org.gjt.jsp.JSPServlet
#ApJServAction .gsp /servlets/com.bitmechanic.gsp.GspServlet
#ApJServAction .jhtml /servlets/org.apache.servlet.ssi.SSI
#ApJServAction .xml /servlets/org.apache.cocoon.Cocoon

# Enable the Apache JServ status handler with the URL of 
# "http://servername/jserv/" (note the trailing slash!)
# Change the ".your_domain.com" to match your domain to enable.
<Location /jserv/>
  SetHandler jserv-status
  
  order deny,allow
  deny from all
  allow from localhost 127.0.0.1
</Location>

############################## W A R N I N G ##################################
# Remember to disable or otherwise protect the execution of the Apache JServ  #
# on a production environment since this may give untrusted users to gather   #
# restricted information on your servlets and their initialization arguments  #
###############################################################################
