# Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You under the Apache License, Version 2.0 # (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Configuration Example for mod_jk # used in combination with Apache 2.2.x # Change the path and file name of the module, in case # you have installed it outside of httpd, or using # a versioned file name. LoadModule jk_module modules/mod_jk.so # We need a workers file exactly once # and in the global server JkWorkersFile conf/workers.properties # Our JK error log # You can (and should) use rotatelogs here JkLogFile logs/mod_jk.log # Our JK log level (trace,debug,info,warn,error) JkLogLevel info # Our JK shared memory file JkShmFile logs/mod_jk.shm # Define a new log format you can use in any CustomLog in order # to add mod_jk specific information to your access log. # LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" \"%{Cookie}i\" \"%{Set-Cookie}o\" %{pid}P %{tid}P %{JK_LB_FIRST_NAME}n %{JK_LB_LAST_NAME}n ACC %{JK_LB_LAST_ACCESSED}n ERR %{JK_LB_LAST_ERRORS}n BSY %{JK_LB_LAST_BUSY}n %{JK_LB_LAST_STATE}n %D" extended_jk # This option will reject all requests, which contain an # encoded percent sign (%25) or backslash (%5C) in the URL # If you are sure, that your webapp doesn't use such # URLs, enable the option to prevent double encoding attacks. # Since: 1.2.24 # JkOptions +RejectUnsafeURI # After setting JkStripSession to "On", mod_jk will # strip all ";jsessionid=..." from request URLs it # does *not* forward to a backend. # This is useful, if all links in a webapp use # URLencoded session IDs and parts of the static # content should be delivered directly by Apache. # Of course you can also do it with mod_rewrite. # Since: 1.2.21 # JkStripSession On # Start a separate thread for internal tasks like # idle connection probing, connection pool resizing # and load value decay. # Run these tasks every JkWatchdogInterval seconds. # Since: 1.2.27 JkWatchdogInterval 60 # Configure access to jk-status and jk-manager # If you want to make this available in a virtual host, # either move this block into the virtual host # or copy it logically there by including "JkMountCopy On" # in the virtual host. # Add an appropriate authentication method here! # Inside Location we can omit the URL in JkMount JkMount jk-status Order deny,allow Deny from all Allow from 127.0.0.1 # Inside Location we can omit the URL in JkMount JkMount jk-manager Order deny,allow Deny from all Allow from 127.0.0.1 # If you want to put all mounts into an external file # that gets reloaded automatically after changes # (with a default latency of 1 minute), # you can define the name of the file here. # JkMountFile conf/extra/uriworkermap.properties # Example for Mounting a context to the worker "balancer" # The URL syntax "a|b" instantiates two mounts at once, # the first one is "a", the second one is "ab". # JkMount /myapp|/* balancer # Example for UnMounting requests for all workers # using a simple URL pattern # Since: 1.2.26 # JkUnMount /myapp/static/* * # Example for UnMounting requests for a named worker # JkUnMount /myapp/images/* balancer # Example for UnMounting requests using regexps # SetEnvIf REQUEST_URI "\.(htm|html|css|gif|jpg|js)$" no-jk # Example for setting a reply timeout depending on the requets URL # Since: 1.2.27 # SetEnvIf Request_URI "/transactions/" JK_REPLY_TIMEOUT=600000 # Example for disabling reply timeouts for certain request URLs # Since: 1.2.27 # SetEnvIf Request_URI "/reports/" JK_REPLY_TIMEOUT=0 # IMPORTANT: Mounts and virtual hosts # If you are using VirtualHost elements, you # - can put mounts only used in some virtual host into its VirtualHost element # - can copy all global mounts to it using "JkMountCopy On" inside the VirtualHost # - can copy all global mounts to all virtual hosts by putting # "JkMountCopy All" into the global server # Since: 1.2.26