tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ruth, Brice" <br...@fiskars.com>
Subject Re: Help (Started over again) Making Tomcat work with Apache
Date Thu, 22 Jul 2004 15:43:59 GMT
Phillip Blancher wrote:

> First, Thank you Brice Ruth for the email before. However I have gone 
> a head and wiped everything out and started over. I picked up in the 
> middle of this installation from someone else so instead of being 
> flustered, I just started over.
>
> Here is the situation. I am setting this up first to work localhost 
> for now, the plan is to add 5 or 6 test IP's later.
>
> TomCat works on its own at http://localhost:8080/
> Apache works on its own at http://localhost/
>
> Apache version is Apache/1.3.31
> TomCat Version is 4.1.30
> I am running on a Windows 2000 server
>
> I have installed the mod_jk module and configured the 
> workers.properties file.
>
> Here is the thing. Everything boots fine, and both services work, but 
> not together. I have placed in the localhost web space a file called 
> test.jsp.
>
> When I go to http://localhost/test.jsp - IE prompts me to download the 
> file.
>
> So even though there are no errors on the start of the services. They 
> are not working together.
>
>
> When I go to the mod_jk_log, I find this error message.
>
> [Thu Jul 22 11:01:51 2004]  [jk_connect.c (203)]: jk_open_socket, 
> connect() failed errno = 61
> [Thu Jul 22 11:01:51 2004]  [jk_ajp_common.c (676)]: Error connecting 
> to tomcat. Tomcat is probably not started or is listenning on the 
> wrong port. Failed errno = 61
>
> So my question is, given the files below, how do I make them talk? Is 
> it as simple as making them listen to different ports and if so, which 
> ones to have them listening to?
>
> Help is muchly appreciated.
>
> Phil
>
>
> --- workers.properties --
> workers.tomcat_home=d:\webserver\apache\tomcat4
> workers.java_home=$(JAVA_HOME)
> workers.th=$(workers.tomcat_home)
> ps=\
> worker.list=ajp13, ajp14
> worker.ajp13.port=8009
> worker.ajp13.host=localhost
> worker.ajp13.type=ajp13
> worker.ajp13.lbfactor=1
> worker.ajp14.port=8010
> worker.ajp14.host=localhost
> worker.ajp14.type=ajp14
> worker.ajp14.secretkey=secret
> worker.ajp14.credentials=myveryrandomentropy
> worker.ajp14.lbfactor=1
> worker.loadbalancer.type=lb
> worker.loadbalancer.balanced_workers=ajp13
> worker.inprocess.type=jni
> worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)tomcat.jar
> worker.inprocess.cmd_line=start
> worker.inprocess.jvm_lib=$(workers.th)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll 
>
> worker.inprocess.stdout=$(workers.th)$(ps)logs$(ps)inprocess.stdout
> worker.inprocess.stderr=$(workers.th)$(ps)logs$(ps)inprocess.stderr
>
> -- mod_jk.conf --
> ########## Auto generated on Thu Jul 22 11:02:03 EDT 2004##########
>
> <IfModule !mod_jk.c>
>  LoadModule jk_module modules/mod_jk.dll
> </IfModule>
>
> JkWorkersFile "d:/webserver/apache/tomcat4/conf/jk/workers.properties"
> JkLogFile "d:/webserver/logs/mod_jk.log"
>
> JkLogLevel info
>
>
>
> <VirtualHost localhost>
>    ServerName localhost
>
>    JkMount /admin ajp13
>    JkMount /admin/* ajp13
>
>    JkMount /webdav ajp13
>    JkMount /webdav/* ajp13
>
>    JkMount /examples ajp13
>    JkMount /examples/* ajp13
>
>    JkMount /tomcat-docs ajp13
>    JkMount /tomcat-docs/* ajp13
>
>    JkMount /manager ajp13
>    JkMount /manager/* ajp13
> </VirtualHost>
>
> -- server.xml --
> <!-- Example Server Configuration File -->
> <!-- Note that component elements are nested corresponding to their
>     parent-child relationships with each other -->
>
> <!-- A "Server" is a singleton element that represents the entire JVM,
>     which may contain one or more "Service" instances.  The Server
>     listens for a shutdown command on the indicated port.
>
>     Note:  A "Server" is not itself a "Container", so you may not
>     define subcomponents such as "Valves" or "Loggers" at this level.
> -->
>
> <Server port="8005" shutdown="SHUTDOWN" debug="0">
>
> <!-- Added for JK Connector plug -->
> <Listener className="org.apache.ajp.tomcat4.config.ApacheConfig"
> modJK="d:/webserver/apache/apache/modules/mod_jk.dll" jkDebug="info"
> workersConfig="d:/webserver/apache/tomcat4/conf/jk/workers.properties"
> jkLog="d:/webserver/logs/mod_jk.log" />
>
>
>
>  <!-- Uncomment these entries to enable JMX MBeans support -->
>  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"
>            debug="0"/>
>  <Listener 
> className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"
>            debug="0"/>
>
>  <!-- Global JNDI resources -->
>  <GlobalNamingResources>
>
>    <!-- Test entry for demonstration purposes -->
>    <Environment name="simpleValue" type="java.lang.Integer" value="30"/>
>
>    <!-- Editable user database that can also be used by
>         UserDatabaseRealm to authenticate users -->
>    <Resource name="UserDatabase" auth="Container"
>              type="org.apache.catalina.UserDatabase"
>       description="User database that can be updated and saved">
>    </Resource>
>    <ResourceParams name="UserDatabase">
>      <parameter>
>        <name>factory</name>
>        <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
>      </parameter>
>      <parameter>
>        <name>pathname</name>
>        <value>conf/tomcat-users.xml</value>
>      </parameter>
>    </ResourceParams>
>
>  </GlobalNamingResources>
>
>  <!-- A "Service" is a collection of one or more "Connectors" that share
>       a single "Container" (and therefore the web applications visible
>       within that Container).  Normally, that Container is an "Engine",
>       but this is not required.
>
>       Note:  A "Service" is not itself a "Container", so you may not
>       define subcomponents such as "Valves" or "Loggers" at this level.
>   -->
>
>  <!-- Define the Tomcat Stand-Alone Service -->
>  <Service name="Tomcat-Standalone">
>
>    <!-- A "Connector" represents an endpoint by which requests are 
> received
>         and responses are returned.  Each Connector passes requests on 
> to the
>         associated "Container" (normally an Engine) for processing.
>
>         By default, a non-SSL HTTP/1.1 Connector is established on 
> port 8080.
>         You can also enable an SSL HTTP/1.1 Connector on port 8443 by
>         following the instructions below and uncommenting the second 
> Connector
>         entry.  SSL support requires the following steps (see the SSL 
> Config
>         HOWTO in the Tomcat 4.0 documentation bundle for more detailed
>         instructions):
>         * Download and install JSSE 1.0.2 or later, and put the JAR files
>           into "$JAVA_HOME/jre/lib/ext".
>         * Execute:
>             %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA 
> (Windows)
>             $JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA  
> (Unix)
>           with a password value of "changeit" for both the certificate 
> and
>           the keystore itself.
>
>         By default, DNS lookups are enabled when a web application calls
>         request.getRemoteHost().  This can have an adverse impact on
>         performance, so you can disable it by setting the
>         "enableLookups" attribute to "false".  When DNS lookups are 
> disabled,
>         request.getRemoteHost() will return the String version of the
>         IP address of the remote client.
>    -->
>
>    <!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8081 -->
>    <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
> port="8080"               minProcessors="5" maxProcessors="75"
>               enableLookups="true" redirectPort="8443"
>               acceptCount="100" debug="0" connectionTimeout="20000"
>               useURIValidationHack="false" disableUploadTimeout="true" />
>    <!-- Note : To disable connection timeouts, set connectionTimeout 
> value
>     to 0 -->
>
>    <!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
>    <!--
>    <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
>               port="8443" minProcessors="5" maxProcessors="75"
>               enableLookups="true"
>            acceptCount="100" debug="0" scheme="https" secure="true"
>               useURIValidationHack="false" disableUploadTimeout="true">
>      <Factory 
> className="org.apache.coyote.tomcat4.CoyoteServerSocketFactory"
>               clientAuth="false" protocol="TLS" />
>    </Connector>
>    -->
>
>    <!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
>    <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
>               port="8009" minProcessors="5" maxProcessors="75"
>               enableLookups="true" redirectPort="8443"
>               acceptCount="10" debug="0" connectionTimeout="20000"
>               useURIValidationHack="false"
>               
> protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/>
>
>    <!-- Define an AJP 1.3 Connector on port 8009 -->
>    <!--
>    <Connector className="org.apache.ajp.tomcat4.Ajp13Connector"
>               port="8009" minProcessors="5" maxProcessors="75"
>               acceptCount="10" debug="0"/>
>    -->
>
>    <!-- Define a Proxied HTTP/1.1 Connector on port 8082 -->
>    <!-- See proxy documentation for more information about using this. 
> -->
>    <!--
>    <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
>               port="8082" minProcessors="5" maxProcessors="75"
>               enableLookups="true" disableUploadTimeout="true"
>               acceptCount="100" debug="0" connectionTimeout="20000"
>               proxyPort="80" useURIValidationHack="false" />
>    -->
>
>    <!-- Define a non-SSL legacy HTTP/1.1 Test Connector on port 8083 -->
>    <!--
>    <Connector 
> className="org.apache.catalina.connector.http.HttpConnector"
>               port="8083" minProcessors="5" maxProcessors="75"
>               enableLookups="true" redirectPort="8443"
>               acceptCount="10" debug="0" />
>    -->
>
>    <!-- Define a non-SSL HTTP/1.0 Test Connector on port 8084 -->
>    <!--
>    <Connector 
> className="org.apache.catalina.connector.http10.HttpConnector"
>               port="8084" minProcessors="5" maxProcessors="75"
>               enableLookups="true" redirectPort="8443"
>               acceptCount="10" debug="0" />
>    -->
>
>    <!-- An Engine represents the entry point (within Catalina) that 
> processes
>         every request.  The Engine implementation for Tomcat stand alone
>         analyzes the HTTP headers included with the request, and 
> passes them
>         on to the appropriate Host (virtual host). -->
>
>    <!-- Define the top level container in our container hierarchy -->
>    <Engine name="Standalone" defaultHost="localhost" debug="0">
>
>      <!-- The request dumper valve dumps useful debugging information 
> about
>           the request headers and cookies that were received, and the 
> response
>           headers and cookies that were sent, for all requests 
> received by
>           this instance of Tomcat.  If you care only about requests to a
>           particular virtual host, or a particular application, nest this
>           element inside the corresponding <Host> or <Context> entry 
> instead.
>
>           For a similar mechanism that is portable to all Servlet 2.3
>           containers, check out the "RequestDumperFilter" Filter in the
>           example application (the source for this filter may be found in
>           "$CATALINA_HOME/webapps/examples/WEB-INF/classes/filters").
>
>           Request dumping is disabled by default.  Uncomment the 
> following
>           element to enable it. -->
>      <!--
>      <Valve className="org.apache.catalina.valves.RequestDumperValve"/>
>      -->
>
>      <!-- Global logger unless overridden at lower levels -->
>      <Logger className="org.apache.catalina.logger.FileLogger"
>              prefix="catalina_log." suffix=".txt"
>              timestamp="true"/>
>
>      <!-- Because this Realm is here, an instance will be shared 
> globally -->
>
>      <!-- This Realm uses the UserDatabase configured in the global JNDI
>           resources under the key "UserDatabase".  Any edits
>           that are performed against this UserDatabase are immediately
>           available for use by the Realm.  -->
>      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
>                 debug="0" resourceName="UserDatabase"/>
>
>      <!-- Comment out the old realm but leave here for now in case we
>           need to go back quickly -->
>      <!--
>      <Realm className="org.apache.catalina.realm.MemoryRealm" />
>      -->
>
>      <!-- Replace the above Realm with one of the following to get a 
> Realm
>           stored in a database and accessed via JDBC -->
>
>      <!--
>      <Realm  className="org.apache.catalina.realm.JDBCRealm" debug="99"
>             driverName="org.gjt.mm.mysql.Driver"
>          connectionURL="jdbc:mysql://localhost/authority"
>         connectionName="test" connectionPassword="test"
>              userTable="users" userNameCol="user_name" 
> userCredCol="user_pass"
>          userRoleTable="user_roles" roleNameCol="role_name" />
>      -->
>
>      <!--
>      <Realm  className="org.apache.catalina.realm.JDBCRealm" debug="99"
>             driverName="oracle.jdbc.driver.OracleDriver"
>          connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL"
>         connectionName="scott" connectionPassword="tiger"
>              userTable="users" userNameCol="user_name" 
> userCredCol="user_pass"
>          userRoleTable="user_roles" roleNameCol="role_name" />
>      -->
>
>      <!--
>      <Realm  className="org.apache.catalina.realm.JDBCRealm" debug="99"
>             driverName="sun.jdbc.odbc.JdbcOdbcDriver"
>          connectionURL="jdbc:odbc:CATALINA"
>              userTable="users" userNameCol="user_name" 
> userCredCol="user_pass"
>          userRoleTable="user_roles" roleNameCol="role_name" />
>      -->
>
>      <!-- Define the default virtual host -->
>      <Host name="localhost" debug="0" appBase="webapps"
>       unpackWARs="true" autoDeploy="true">
>
> <!--- Added for JK Plug -->
>     <Listener className="org.apache.ajp.tomcat4.config.ApacheConfig" 
> append="true" />
>
>        <!-- Normally, users must authenticate themselves to each web app
>             individually.  Uncomment the following entry if you would 
> like
>             a user to be authenticated the first time they encounter a
>             resource protected by a security constraint, and then have 
> that
>             user identity maintained across *all* web applications 
> contained
>             in this virtual host. -->
>        <!--
>        <Valve className="org.apache.catalina.authenticator.SingleSignOn"
>                   debug="0"/>
>        -->
>
>        <!-- Access log processes all requests for this virtual host.  By
>             default, 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 either 
> a relative
>             (to $CATALINA_HOME) or absolute path to the desired 
> directory.
>        -->
>        <!--
>        <Valve className="org.apache.catalina.valves.AccessLogValve"
>                 directory="logs"  prefix="localhost_access_log." 
> suffix=".txt"
>                 pattern="common" resolveHosts="false"/>
>        -->
>
>        <!-- 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 either 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"/>
>
>        <!-- Define properties for each web application.  This is only 
> needed
>             if you want to set non-default properties, or have web 
> application
>             document roots in places other than the virtual host's 
> appBase
>             directory.  -->
>
>        <!-- Tomcat Root Context -->
>        <!--
>          <Context path="" docBase="ROOT" debug="0"/>
>        -->
>
>        <!-- Tomcat Examples Context -->
>        <Context path="/examples" docBase="examples" debug="0"
>                 reloadable="true" crossContext="true">
>          <Logger className="org.apache.catalina.logger.FileLogger"
>                     prefix="localhost_examples_log." suffix=".txt"
>              timestamp="true"/>
>          <Ejb   name="ejb/EmplRecord" type="Entity"
>                 home="com.wombat.empl.EmployeeRecordHome"
>               remote="com.wombat.empl.EmployeeRecord"/>
>
>          <!-- If you wanted the examples app to be able to edit the
>               user database, you would uncomment the following entry.
>               Of course, you would want to enable security on the
>               application as well, so this is not done by default!
>               The database object could be accessed like this:
>
>               Context initCtx = new InitialContext();
>               Context envCtx = (Context) initCtx.lookup("java:comp/env");
>               UserDatabase database =
>                    (UserDatabase) envCtx.lookup("userDatabase");
>          -->
> <!--
>          <ResourceLink name="userDatabase" global="UserDatabase"
>                        type="org.apache.catalina.UserDatabase"/>
> -->
>
>
>          <!-- PersistentManager: Uncomment the section below to test 
> Persistent
>                Sessions.
>
>               saveOnRestart: If true, all active sessions will be saved
>                 to the Store when Catalina is shutdown, regardless of
>                 other settings. All Sessions found in the Store will be
>                 loaded on startup. Sessions past their expiration are
>                 ignored in both cases.
>               maxActiveSessions: If 0 or greater, having too many active
>                 sessions will result in some being swapped out. 
> minIdleSwap
>                 limits this. -1 means unlimited sessions are allowed.
>                 0 means sessions will almost always be swapped out after
>                 use - this will be noticeably slow for your users.
>               minIdleSwap: Sessions must be idle for at least this long
>                 (in seconds) before they will be swapped out due to
>               maxActiveSessions. This avoids thrashing when the site is
>                 highly active. -1 or 0 means there is no minimum - 
> sessions
>                 can be swapped out at any time.
>               maxIdleSwap: Sessions will be swapped out if idle for this
>                 long (in seconds). If minIdleSwap is higher, then it will
>                 override this. This isn't exact: it is checked 
> periodically.
>                 -1 means sessions won't be swapped out for this reason,
>                 although they may be swapped out for maxActiveSessions.
>                 If set to >= 0, guarantees that all sessions found in the
>                 Store will be loaded on startup.
>               maxIdleBackup: Sessions will be backed up (saved to the 
> Store,
>                 but left in active memory) if idle for this long (in 
> seconds),
>                 and all sessions found in the Store will be loaded on 
> startup.
>                 If set to -1 sessions will not be backed up, 0 means they
>                 should be backed up shortly after being used.
>
>               To clear sessions from the Store, set maxActiveSessions, 
> maxIdleSwap,
>               and minIdleBackup all to -1, saveOnRestart to false, 
> then restart
>               Catalina.
>          -->
>           <!--
>          <Manager 
> className="org.apache.catalina.session.PersistentManager"
>              debug="0"
>              saveOnRestart="true"
>              maxActiveSessions="-1"
>              minIdleSwap="-1"
>              maxIdleSwap="-1"
>              maxIdleBackup="-1">
>                <Store className="org.apache.catalina.session.FileStore"/>
>          </Manager>
>           -->
>          <Environment name="maxExemptions" type="java.lang.Integer"
>                      value="15"/>
>          <Parameter name="context.param.name" value="context.param.value"
>                     override="false"/>
>          <Resource name="jdbc/EmployeeAppDb" auth="SERVLET"
>                    type="javax.sql.DataSource"/>
>          <ResourceParams name="jdbc/EmployeeAppDb">
>            <parameter><name>user</name><value>sa</value></parameter>
>            <parameter><name>password</name><value></value></parameter>
>            <parameter><name>driverClassName</name>
>              <value>org.hsql.jdbcDriver</value></parameter>
>            <parameter><name>driverName</name>
>              <value>jdbc:HypersonicSQL:database</value></parameter>
>          </ResourceParams>
>          <Resource name="mail/Session" auth="Container"
>                    type="javax.mail.Session"/>
>          <ResourceParams name="mail/Session">
>            <parameter>
>              <name>mail.smtp.host</name>
>              <value>localhost</value>
>            </parameter>
>          </ResourceParams>
>          <ResourceLink name="linkToGlobalResource"
>                    global="simpleValue"
>                    type="java.lang.Integer"/>
>        </Context>
>
>      </Host>
>
>    </Engine>
>
>  </Service>
>
>  <!-- The MOD_WEBAPP connector is used to connect Apache 1.3 with 
> Tomcat 4.0
>       as its servlet container. Please read the README.txt file coming 
> with
>       the WebApp Module distribution on how to build it.
>       (Or check out the "jakarta-tomcat-connectors/webapp" CVS 
> repository)
>
>       To configure the Apache side, you must ensure that you have the
>       "ServerName" and "Port" directives defined in "httpd.conf".  Then,
>       lines like these to the bottom of your "httpd.conf" file:
>
>         LoadModule webapp_module libexec/mod_webapp.so
>         WebAppConnection warpConnection warp localhost:8008
>         WebAppDeploy examples warpConnection /examples/
>
>       The next time you restart Apache (after restarting Tomcat, if 
> needed)
>       the connection will be established, and all applications you make
>       visible via "WebAppDeploy" directives can be accessed through 
> Apache.
>  -->
>
>  <!-- Define an Apache-Connector Service -->
> <!--
>  <Service name="Tomcat-Apache">
>
>    <Connector 
> className="org.apache.catalina.connector.warp.WarpConnector"
>     port="8008" minProcessors="5" maxProcessors="75"
>     enableLookups="true" appBase="webapps"
>     acceptCount="10" debug="0"/>
>
>    <Engine className="org.apache.catalina.connector.warp.WarpEngine"
>     name="Apache" debug="0">
>
>      <Logger className="org.apache.catalina.logger.FileLogger"
>              prefix="apache_log." suffix=".txt"
>              timestamp="true"/>
>
>      <Realm className="org.apache.catalina.realm.MemoryRealm" />
>
>    </Engine>
>
>  </Service>
> -->
>
> </Server>
>
>
>
> --- httpd.conf ---
>
> #
> # Based upon the NCSA server configuration files originally by Rob 
> McCool.
> #
> # This is the main Apache server configuration file.  It contains the
> # configuration directives that give the server its instructions.
> # See <URL:http://httpd.apache.org/docs/> for detailed information about
> # the directives.
> #
> # Do NOT simply read the instructions in here without understanding
> # what they do.  They're here only as hints or reminders.  If you are 
> unsure
> # consult the online docs. You have been warned.
> #
> # After this file is processed, the server will look for and process
> # D:/webserver/apache/Apache/conf/srm.conf and then 
> D:/webserver/apache/Apache/conf/access.conf
> # unless you have overridden these with ResourceConfig and/or
> # AccessConfig directives here.
> #
> # The configuration directives are grouped into three basic sections:
> #  1. Directives that control the operation of the Apache server 
> process as a
> #     whole (the 'global environment').
> #  2. Directives that define the parameters of the 'main' or 'default' 
> server,
> #     which responds to requests that aren't handled by a virtual host.
> #     These directives also provide default values for the settings
> #     of all virtual hosts.
> #  3. Settings for virtual hosts, which allow Web requests to be sent to
> #     different IP addresses or hostnames and have them handled by the
> #     same Apache server process.
> #
> # Configuration and logfile names: If the filenames you specify for many
> # of the server's control files begin with "/" (or "drive:/" for 
> Win32), the
> # server will use that explicit path.  If the filenames do *not* begin
> # with "/", the value of ServerRoot is prepended -- so "logs/foo.log"
> # with ServerRoot set to "/usr/local/apache" will be interpreted by the
> # server as "/usr/local/apache/logs/foo.log".
> #
> # NOTE: Where filenames are specified, you must use forward slashes
> # instead of backslashes (e.g., "c:/apache" instead of "c:\apache").
> # If a drive letter is omitted, the drive on which Apache.exe is located
> # will be used by default.  It is recommended that you always supply
> # an explicit drive letter in absolute paths, however, to avoid
> # confusion.
> #
>
> ### Section 1: Global Environment
> #
> # The directives in this section affect the overall operation of Apache,
> # such as the number of concurrent requests it can handle or where it
> # can find its configuration files.
> #
>
> #
> # ServerType is either inetd, or standalone.  Inetd mode is only 
> supported on
> # Unix platforms.
> #
> ServerType standalone
>
> #
> # ServerRoot: The top of the directory tree under which the server's
> # configuration, error, and log files are kept.
> #
> ServerRoot "D:/webserver/apache/Apache"
>
> #
> # PidFile: The file in which the server should record its process
> # identification number when it starts.
> #
> PidFile logs/httpd.pid
>
> #
> # ScoreBoardFile: File used to store internal server process information.
> # Not all architectures require this.  But if yours does (you'll know 
> because
> # this file will be  created when you run Apache) then you *must* 
> ensure that
> # no two invocations of Apache share the same scoreboard file.
> #
> ScoreBoardFile logs/apache_runtime_status
>
> #
> # In the standard configuration, the server will process httpd.conf (this
> # file, specified by the -f command line option), srm.conf, and 
> access.conf
> # in that order.  The latter two files are now distributed empty, as 
> it is
> # recommended that all directives be kept in a single file for 
> simplicity.
> # The commented-out values below are the built-in defaults.  You can 
> have the
> # server ignore these files altogether by using "/dev/null" (for Unix) or
> # "nul" (for Win32) for the arguments to the directives.
> #
> #ResourceConfig conf/srm.conf
> #AccessConfig conf/access.conf
>
> #
> # Timeout: The number of seconds before receives and sends time out.
> #
> Timeout 300
>
> #
> # KeepAlive: Whether or not to allow persistent connections (more than
> # one request per connection). Set to "Off" to deactivate.
> #
> KeepAlive On
>
> #
> # MaxKeepAliveRequests: The maximum number of requests to allow
> # during a persistent connection. Set to 0 to allow an unlimited amount.
> # We recommend you leave this number high, for maximum performance.
> #
> MaxKeepAliveRequests 100
>
> #
> # KeepAliveTimeout: Number of seconds to wait for the next request 
> from the
> # same client on the same connection.
> #
> KeepAliveTimeout 15
>
> #
> # Apache on Win32 always creates one child process to handle 
> requests.  If it
> # dies, another child process is created automatically.  Within the child
> # process multiple threads handle incoming requests.  The next two
> # directives control the behaviour of the threads and processes.
> #
>
> #
> # MaxRequestsPerChild: the number of requests each child process is
> # allowed to process before the child dies.  The child will exit so
> # as to avoid problems after prolonged use when Apache (and maybe the
> # libraries it uses) leak memory or other resources.  On most systems, 
> this
> # isn't really needed, but a few (such as Solaris) do have notable leaks
> # in the libraries.  For Win32, set this value to zero (unlimited)
> # unless advised otherwise.
> #
> # NOTE: This value does not include keepalive requests after the initial
> #       request per connection. For example, if a child process handles
> #       an initial request and 10 subsequent "keptalive" requests, it
> #       would only count as 1 request towards this limit.
> #
> MaxRequestsPerChild 0
>
> #
> # Number of concurrent threads (i.e., requests) the server will allow.
> # Set this value according to the responsiveness of the server (more
> # requests active at once means they're all handled more slowly) and
> # the amount of system resources you'll allow the server to consume.
> #
> ThreadsPerChild 50
>
> #
> # Listen: Allows you to bind Apache to specific IP addresses and/or
> # ports, instead of the default. See also the <VirtualHost>
> # directive.
> #
> #Listen 3000
> #Listen 12.34.56.78:80
> Listen localhost:80
> Listen 80
>
>
> #
> # BindAddress: You can support virtual hosts with this option. This 
> directive
> # is used to tell the server which IP address to listen to. It can either
> # contain "*", an IP address, or a fully qualified Internet domain name.
> # See also the <VirtualHost> and Listen directives.
> #
> #BindAddress *
>
> #
> # Dynamic Shared Object (DSO) Support
> #
> # To be able to use the functionality of a module which was built as a 
> DSO you
> # have to place corresponding `LoadModule' lines at this location so the
> # directives contained in it are actually available _before_ they are 
> used.
> # Please read the file README.DSO in the Apache 1.3 distribution for more
> # details about the DSO mechanism and run `apache -l' for the list of 
> already
> # built-in (statically linked and thus always available) modules in 
> your Apache
> # binary.
> #
> # Note: The order in which modules are loaded is important.  Don't change
> # the order below without expert advice.
> #
> # Example:
> # LoadModule foo_module modules/mod_foo.so
> #
> #LoadModule vhost_alias_module modules/mod_vhost_alias.so
> #LoadModule mime_magic_module modules/mod_mime_magic.so
> #LoadModule status_module modules/mod_status.so
> #LoadModule info_module modules/mod_info.so
> #LoadModule speling_module modules/mod_speling.so
> #LoadModule rewrite_module modules/mod_rewrite.so
> #LoadModule anon_auth_module modules/mod_auth_anon.so
> #LoadModule dbm_auth_module modules/mod_auth_dbm.so
> #LoadModule digest_auth_module modules/mod_auth_digest.so
> #LoadModule digest_module modules/mod_digest.so
> #LoadModule proxy_module modules/mod_proxy.so
> #LoadModule cern_meta_module modules/mod_cern_meta.so
> #LoadModule expires_module modules/mod_expires.so
> #LoadModule headers_module modules/mod_headers.so
> #LoadModule usertrack_module modules/mod_usertrack.so
> #LoadModule unique_id_module modules/mod_unique_id.so
>
> #Added for JK_mod support by phil
> Include "d:/webserver/apache/tomcat4/conf/auto/mod_jk.conf"
>
> #
> #  Reconstruction of the complete module list from all available modules
> #  (static and shared ones) to achieve correct module execution order.
> #
> # The modules listed below, without a corresponding LoadModule directive,
> # are static bound into the standard Apache binary distribution for 
> Windows.
> #
> # Note: The order in which modules are loaded is important.  Don't change
> # the order below without expert advice.
> #
> # [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE, UPDATE THIS TOO!]
> ClearModuleList
> #AddModule mod_vhost_alias.c
> AddModule mod_env.c
> AddModule mod_log_config.c
> #AddModule mod_mime_magic.c
> AddModule mod_mime.c
> AddModule mod_negotiation.c
> #AddModule mod_status.c
> #AddModule mod_info.c
> AddModule mod_include.c
> AddModule mod_autoindex.c
> AddModule mod_dir.c
> AddModule mod_isapi.c
> AddModule mod_cgi.c
> AddModule mod_asis.c
> AddModule mod_imap.c
> AddModule mod_actions.c
> #AddModule mod_speling.c
> AddModule mod_userdir.c
> AddModule mod_alias.c
> #AddModule mod_rewrite.c
> AddModule mod_access.c
> AddModule mod_auth.c
> #AddModule mod_auth_anon.c
> #AddModule mod_auth_dbm.c
> #AddModule mod_auth_digest.c
> #AddModule mod_digest.c
> #AddModule mod_proxy.c
> #AddModule mod_cern_meta.c
> #AddModule mod_expires.c
> #AddModule mod_headers.c
> #AddModule mod_usertrack.c
> #AddModule mod_unique_id.c
> AddModule mod_so.c
> AddModule mod_setenvif.c
> AddModule mod_jk.c
>
> #
> # ExtendedStatus controls whether Apache will generate "full" status
> # information (ExtendedStatus On) or just basic information 
> (ExtendedStatus
> # Off) when the "server-status" handler is called. The default is Off.
> #
> #ExtendedStatus On
>
> ### Section 2: 'Main' server configuration
> #
> # The directives in this section set up the values used by the 'main'
> # server, which responds to any requests that aren't handled by a
> # <VirtualHost> definition.  These values also provide defaults for
> # any <VirtualHost> containers you may define later in the file.
> #
> # All of these directives may appear inside <VirtualHost> containers,
> # in which case these default settings will be overridden for the
> # virtual host being defined.
> #
>
> #
> # Port: The port to which the standalone server listens.  Certain 
> firewall
> # products must be configured before Apache can listen to a specific 
> port.
> # Other running httpd servers will also interfere with this port.  
> Disable
> # all firewall, security, and other services if you encounter problems.
> # To help diagnose problems use the Windows NT command NETSTAT -a
> #
> Port 80
>
> #
> # ServerAdmin: Your address, where problems with the server should be
> # e-mailed.  This address appears on some server-generated pages, such
> # as error documents.
> #
> ServerAdmin pblancher@hotmail.com
>
> #
> # ServerName allows you to set a host name which is sent back to 
> clients for
> # your server if it's different than the one the program would get 
> (i.e., use
> # "www" instead of the host's real name).
> #
> # Note: You cannot just invent host names and hope they work. The name 
> you
> # define here must be a valid DNS name for your host. If you don't 
> understand
> # this, ask your network administrator.
> # If your host doesn't have a registered DNS name, enter its IP 
> address here.
> # You will have to access it by its address (e.g., http://123.45.67.89/)
> # anyway, and this will make redirections work in a sensible way.
> #
> # 127.0.0.1 is the TCP/IP local loop-back address, often named 
> localhost. Your
> # machine always knows itself by this address. If you use Apache 
> strictly for
> # local testing and development, you may use 127.0.0.1 as the server 
> name.
> #
> ServerName localhost
>
>
> #
> # DocumentRoot: The directory out of which you will serve your
> # documents. By default, all requests are taken from this directory, but
> # symbolic links and aliases may be used to point to other locations.
> #
> DocumentRoot "D:/webserver/apache/Apache/htdocs"
>
> #
> # Each directory to which Apache has access, can be configured with 
> respect
> # to which services and features are allowed and/or disabled in that
> # directory (and its subdirectories).
> #
> # First, we configure the "default" to be a very restrictive set of
> # permissions.
> #
> <Directory />
>    Options FollowSymLinks
>    AllowOverride None
> </Directory>
>
> #
> # Note that from this point forward you must specifically allow
> # particular features to be enabled - so if something's not working as
> # you might expect, make sure that you have specifically enabled it
> # below.
> #
>
> #
> # This should be changed to whatever you set DocumentRoot to.
> #
> <Directory "D:/webserver/apache/Apache/htdocs">
>
> #
> # This may also be "None", "All", or any combination of "Indexes",
> # "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews".
> #
> # Note that "MultiViews" must be named *explicitly* --- "Options All"
> # doesn't give it to you.
> #
>    Options Indexes FollowSymLinks MultiViews
>
> #
> # This controls which options the .htaccess files in directories can
> # override. Can also be "All", or any combination of "Options", 
> "FileInfo",
> # "AuthConfig", and "Limit"
> #
>    AllowOverride None
>
> #
> # Controls who can get stuff from this server.
> #
>    Order allow,deny
>    Allow from all
> </Directory>
>
> #
> # UserDir: The name of the directory which is appended onto a user's home
> # directory if a ~user request is received.
> #
> # Under Win32, we do not currently try to determine the home directory of
> # a Windows login, so a format such as that below needs to be used.  See
> # the UserDir documentation for details.
> #
> <IfModule mod_userdir.c>
>    UserDir "D:/webserver/apache/Apache/users/"
> </IfModule>
>
> #
> # Control access to UserDir directories.  The following is an example
> # for a site where these directories are restricted to read-only.
> #
> #<Directory "D:/webserver/apache/Apache/users">
> #    AllowOverride FileInfo AuthConfig Limit
> #    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
> #    <Limit GET POST OPTIONS PROPFIND>
> #        Order allow,deny
> #        Allow from all
> #    </Limit>
> #    <LimitExcept GET POST OPTIONS PROPFIND>
> #        Order deny,allow
> #        Deny from all
> #    </LimitExcept>
> #</Directory>
>
> #
> # DirectoryIndex: Name of the file or files to use as a pre-written HTML
> # directory index.  Separate multiple entries with spaces.
> #
> <IfModule mod_dir.c>
>    DirectoryIndex index.html
> </IfModule>
>
> #
> # AccessFileName: The name of the file to look for in each directory
> # for access control information.
> #
> AccessFileName .htaccess
>
> #
> # The following lines prevent .htaccess files from being viewed by
> # Web clients.  Since .htaccess files often contain authorization
> # information, access is disallowed for security reasons.  Comment
> # these lines out if you want Web visitors to see the contents of
> # .htaccess files.  If you change the AccessFileName directive above,
> # be sure to make the corresponding changes here.
> #
> # Also, folks tend to use names such as .htpasswd for password
> # files, so this will protect those as well.
> #
> <Files ~ "^\.ht">
>    Order allow,deny
>    Deny from all
>    Satisfy All
> </Files>
>
> #
> # CacheNegotiatedDocs: By default, Apache sends "Pragma: no-cache" 
> with each
> # document that was negotiated on the basis of content. This asks proxy
> # servers not to cache the document. Uncommenting the following line 
> disables
> # this behavior, and proxies will be allowed to cache the documents.
> #
> #CacheNegotiatedDocs
>
> #
> # UseCanonicalName:  (new for 1.3)  With this setting turned on, whenever
> # Apache needs to construct a self-referencing URL (a URL that refers 
> back
> # to the server the response is coming from) it will use ServerName and
> # Port to form a "canonical" name.  With this setting off, Apache will
> # use the hostname:port that the client supplied, when possible.  This
> # also affects SERVER_NAME and SERVER_PORT in CGI scripts.
> #
> UseCanonicalName On
>
> #
> # TypesConfig describes where the mime.types file (or equivalent) is
> # to be found.
> #
> <IfModule mod_mime.c>
>    TypesConfig conf/mime.types
> </IfModule>
>
> #
> # DefaultType is the default MIME type the server will use for a document
> # if it cannot otherwise determine one, such as from filename extensions.
> # If your server contains mostly text or HTML documents, "text/plain" is
> # a good value.  If most of your content is binary, such as applications
> # or images, you may want to use "application/octet-stream" instead to
> # keep browsers from trying to display binary files as though they are
> # text.
> #
> DefaultType text/plain
>
> #
> # The mod_mime_magic module allows the server to use various hints 
> from the
> # contents of the file itself to determine its type.  The MIMEMagicFile
> # directive tells the module where the hint definitions are located.
> # mod_mime_magic is not part of the default server (you have to add
> # it yourself with a LoadModule [see the DSO paragraph in the 'Global
> # Environment' section], or recompile the server and include 
> mod_mime_magic
> # as part of the configuration), so it's enclosed in an <IfModule> 
> container.
> # This means that the MIMEMagicFile directive will only be processed 
> if the
> # module is part of the server.
> #
> <IfModule mod_mime_magic.c>
>    MIMEMagicFile conf/magic
> </IfModule>
>
> #
> # HostnameLookups: Log the names of clients or just their IP addresses
> # e.g., www.apache.org (on) or 204.62.129.132 (off).
> # The default is off because it'd be overall better for the net if people
> # had to knowingly turn this feature on, since enabling it means that
> # each client request will result in AT LEAST one lookup request to the
> # nameserver.
> #
> HostnameLookups Off
>
> #
> # ErrorLog: The location of the error log file.
> # If you do not specify an ErrorLog directive within a <VirtualHost>
> # container, error messages relating to that virtual host will be
> # logged here.  If you *do* define an error logfile for a <VirtualHost>
> # container, that host's errors will be logged there and not here.
> #
> ErrorLog logs/error.log
>
> #
> # LogLevel: Control the number of messages logged to the error.log.
> # Possible values include: debug, info, notice, warn, error, crit,
> # alert, emerg.
> #
> LogLevel warn
>
> #
> # The following directives define some format nicknames for use with
> # a CustomLog directive (see below).
> #
> LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" 
> \"%{User-Agent}i\"" combined
> LogFormat "%h %l %u %t \"%r\" %>s %b" common
> LogFormat "%{Referer}i -> %U" referer
> LogFormat "%{User-agent}i" agent
>
> #
> # The location and format of the access logfile (Common Logfile Format).
> # If you do not define any access logfiles within a <VirtualHost>
> # container, they will be logged here.  Contrariwise, if you *do*
> # define per-<VirtualHost> access logfiles, transactions will be
> # logged therein and *not* in this file.
> #
> CustomLog logs/access.log common
>
> #
> # If you would like to have agent and referer logfiles, uncomment the
> # following directives.
> #
> #CustomLog logs/referer.log referer
> #CustomLog logs/agent.log agent
>
> #
> # If you prefer a single logfile with access, agent, and referer 
> information
> # (Combined Logfile Format) you can use the following directive.
> #
> #CustomLog logs/access.log combined
>
> #
> # Optionally add a line containing the server version and virtual host
> # name to server-generated pages (error documents, FTP directory 
> listings,
> # mod_status and mod_info output etc., but not CGI generated documents).
> # Set to "EMail" to also include a mailto: link to the ServerAdmin.
> # Set to one of:  On | Off | EMail
> #
> ServerSignature On
>
> #
> # Apache parses all CGI scripts for the shebang line by default.
> # This comment line, the first line of the script, consists of the 
> symbols
> # pound (#) and exclamation (!) followed by the path of the program that
> # can execute this specific script.  For a perl script, with perl.exe in
> # the C:\Program Files\Perl directory, the shebang line should be:
>
>   #!c:/program files/perl/perl
>
> # Note you _must_not_ indent the actual shebang line, and it must be the
> # first line of the file.  Of course, CGI processing must be enabled by
> # the appropriate ScriptAlias or Options ExecCGI directives for the files
> # or directory in question.
> #
> # However, Apache on Windows allows either the Unix behavior above, or 
> can
> # use the Registry to match files by extention.  The command to execute
> # a file of this type is retrieved from the registry by the same 
> method as
> # the Windows Explorer would use to handle double-clicking on a file.
> # These script actions can be configured from the Windows Explorer 
> View menu,
> # 'Folder Options', and reviewing the 'File Types' tab.  Clicking the 
> Edit
> # button allows you to modify the Actions, of which Apache 1.3 
> attempts to
> # perform the 'Open' Action, and failing that it will try the shebang 
> line.
> # This behavior is subject to change in Apache release 2.0.
> #
> # Each mechanism has it's own specific security weaknesses, from the 
> means
> # to run a program you didn't intend the website owner to invoke, and the
> # best method is a matter of great debate.
> #
> # To enable the this Windows specific behavior (and therefore 
> -disable- the
> # equivilant Unix behavior), uncomment the following directive:
> #
> #ScriptInterpreterSource registry
> #
> # The directive above can be placed in individual <Directory> blocks 
> or the
> # .htaccess file, with either the 'registry' (Windows behavior) or 
> 'script'
> # (Unix behavior) option, and will override this server default option.
> #
>
> #
> # Aliases: Add here as many aliases as you need (with no limit). The 
> format is
> # Alias fakename realname
> #
> <IfModule mod_alias.c>
>
>    #
>    # Note that if you include a trailing / on fakename then the server 
> will
>    # require it to be present in the URL.  So "/icons" isn't aliased 
> in this
>    # example, only "/icons/".  If the fakename is slash-terminated, 
> then the
>    # realname must also be slash terminated, and if the fakename omits 
> the
>    # trailing slash, the realname must also omit it.
>    #
>    Alias /icons/ "D:/webserver/apache/Apache/icons/"
>
>    <Directory "D:/webserver/apache/Apache/icons">
>        Options Indexes MultiViews
>        AllowOverride None
>        Order allow,deny
>        Allow from all
>    </Directory>
>
>    # This Alias will project the on-line documentation tree under 
> /manual/
>    # even if you change the DocumentRoot. Comment it if you don't want to
>    # provide access to the on-line documentation.
>    #
>    Alias /manual/ "D:/webserver/apache/Apache/htdocs/manual/"
>
>    <Directory "D:/webserver/apache/Apache/htdocs/manual">
>        Options Indexes FollowSymlinks MultiViews
>        AllowOverride None
>        Order allow,deny
>        Allow from all
>    </Directory>
>
>    #
>    # ScriptAlias: This controls which directories contain server scripts.
>    # ScriptAliases are essentially the same as Aliases, except that
>    # documents in the realname directory are treated as applications and
>    # run by the server when requested rather than as documents sent to 
> the client.
>    # The same rules about trailing "/" apply to ScriptAlias directives 
> as to
>    # Alias.
>    #
>    ScriptAlias /cgi-bin/ "D:/webserver/apache/Apache/cgi-bin/"
>
>    #
>    # "D:/webserver/apache/Apache/cgi-bin" should be changed to 
> whatever your ScriptAliased
>    # CGI directory exists, if you have that configured.
>    #
>    <Directory "D:/webserver/apache/Apache/cgi-bin">
>        AllowOverride None
>        Options None
>        Order allow,deny
>        Allow from all
>    </Directory>
>
> </IfModule>
> # End of aliases.
>
> #
> # Redirect allows you to tell clients about documents which used to 
> exist in
> # your server's namespace, but do not anymore. This allows you to tell 
> the
> # clients where to look for the relocated document.
> # Format: Redirect old-URI new-URL
> #
>
> #
> # Directives controlling the display of server-generated directory 
> listings.
> #
> <IfModule mod_autoindex.c>
>
>    #
>    # FancyIndexing is whether you want fancy directory indexing or 
> standard
>    #
>    # Note, add the option TrackModified to the IndexOptions default 
> list only
>    # if all indexed directories reside on NTFS volumes.  The 
> TrackModified flag
>    # will report the Last-Modified date to assist caches and proxies 
> to properly
>    # track directory changes, but it does _not_ work on FAT volumes.
>    #
>    IndexOptions FancyIndexing
>
>    #
>    # AddIcon* directives tell the server which icon to show for different
>    # files or filename extensions.  These are only displayed for
>    # FancyIndexed directories.
>    #
>    AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
>
>    AddIconByType (TXT,/icons/text.gif) text/*
>    AddIconByType (IMG,/icons/image2.gif) image/*
>    AddIconByType (SND,/icons/sound2.gif) audio/*
>    AddIconByType (VID,/icons/movie.gif) video/*
>
>    AddIcon /icons/binary.gif .bin .exe
>    AddIcon /icons/binhex.gif .hqx
>    AddIcon /icons/tar.gif .tar
>    AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
>    AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
>    AddIcon /icons/a.gif .ps .ai .eps
>    AddIcon /icons/layout.gif .html .shtml .htm .pdf
>    AddIcon /icons/text.gif .txt
>    AddIcon /icons/c.gif .c
>    AddIcon /icons/p.gif .pl .py
>    AddIcon /icons/f.gif .for
>    AddIcon /icons/dvi.gif .dvi
>    AddIcon /icons/uuencoded.gif .uu
>    AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
>    AddIcon /icons/tex.gif .tex
>    AddIcon /icons/bomb.gif core
>
>    AddIcon /icons/back.gif ..
>    AddIcon /icons/hand.right.gif README
>    AddIcon /icons/folder.gif ^^DIRECTORY^^
>    AddIcon /icons/blank.gif ^^BLANKICON^^
>
>    #
>    # DefaultIcon is which icon to show for files which do not have an 
> icon
>    # explicitly set.
>    #
>    DefaultIcon /icons/unknown.gif
>
>    #
>    # AddDescription allows you to place a short description after a 
> file in
>    # server-generated indexes.  These are only displayed for FancyIndexed
>    # directories.
>    # Format: AddDescription "description" filename
>    #
>    #AddDescription "GZIP compressed document" .gz
>    #AddDescription "tar archive" .tar
>    #AddDescription "GZIP compressed tar archive" .tgz
>
>    #
>    # ReadmeName is the name of the README file the server will look 
> for by
>    # default, and append to directory listings.
>    #
>    # HeaderName is the name of a file which should be prepended to
>    # directory indexes.
>    #
>    ReadmeName README
>    HeaderName HEADER
>
>    #
>    # IndexIgnore is a set of filenames which directory indexing should 
> ignore
>    # and not include in the listing.  Shell-style wildcarding is 
> permitted.
>    #
>    IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
>
> </IfModule>
> # End of indexing directives.
>
> #
> # Document types.
> #
> <IfModule mod_mime.c>
>
>    #
>    # AddType allows you to tweak mime.types without actually editing 
> it, or to
>    # make certain files to be certain types.
>    #
>    AddType application/x-tar .tgz
>
>    #
>    # AddEncoding allows you to have certain browsers uncompress
>    # information on the fly. Note: Not all browsers support this.
>    # Despite the name similarity, the following Add* directives have 
> nothing
>    # to do with the FancyIndexing customization directives above.
>    #
>    AddEncoding x-compress .Z
>    AddEncoding x-gzip .gz .tgz
>    #
>    # If the AddEncoding directives above are commented-out, then you
>    # probably should define those extensions to indicate media types:
>    #
>    #AddType application/x-compress .Z
>    #AddType application/x-gzip .gz .tgz
>
>    #
>    # AddLanguage allows you to specify the language of a document. You 
> can
>    # then use content negotiation to give a browser a file in a language
>    # it can understand.
>    #
>    # Note 1: The suffix does not have to be the same as the language
>    # keyword --- those with documents in Polish (whose net-standard
>    # language code is pl) may wish to use "AddLanguage pl .po" to
>    # avoid the ambiguity with the common suffix for perl scripts.
>    #
>    # Note 2: The example entries below illustrate that in quite
>    # some cases the two character 'Language' abbreviation is not
>    # identical to the two character 'Country' code for its country,
>    # E.g. 'Danmark/dk' versus 'Danish/da'.
>    #
>    # Note 3: In the case of 'ltz' we violate the RFC by using a three 
> char
>    # specifier. But there is 'work in progress' to fix this and get
>    # the reference data for rfc1766 cleaned up.
>    #
>    # Danish (da) - Dutch (nl) - English (en) - Estonian (ee)
>    # French (fr) - German (de) - Greek-Modern (el)
>    # Italian (it) - Korean (kr) - Norwegian (no) - Norwegian Nynorsk (nn)
>    # Portugese (pt) - Luxembourgeois* (ltz)
>    # Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cs)
>    # Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja)
>    # Russian (ru)
>    #
>    AddLanguage da .dk
>    AddLanguage nl .nl
>    AddLanguage en .en
>    AddLanguage et .ee
>    AddLanguage fr .fr
>    AddLanguage de .de
>    AddLanguage el .el
>    AddLanguage he .he
>    AddCharset ISO-8859-8 .iso8859-8
>    AddLanguage it .it
>    AddLanguage ja .ja
>    AddCharset ISO-2022-JP .jis
>    AddLanguage kr .kr
>    AddCharset ISO-2022-KR .iso-kr
>    AddLanguage nn .nn
>    AddLanguage no .no
>    AddLanguage pl .po
>    AddCharset ISO-8859-2 .iso-pl
>    AddLanguage pt .pt
>    AddLanguage pt-br .pt-br
>    AddLanguage ltz .lu
>    AddLanguage ca .ca
>    AddLanguage es .es
>    AddLanguage sv .sv
>    AddLanguage cs .cz .cs
>    AddLanguage ru .ru
>    AddLanguage zh-TW .zh-tw
>    AddCharset Big5         .Big5    .big5
>    AddCharset WINDOWS-1251 .cp-1251
>    AddCharset CP866        .cp866
>    AddCharset ISO-8859-5   .iso-ru
>    AddCharset KOI8-R       .koi8-r
>    AddCharset UCS-2        .ucs2
>    AddCharset UCS-4        .ucs4
>    AddCharset UTF-8        .utf8
>
>    # LanguagePriority allows you to give precedence to some languages
>    # in case of a tie during content negotiation.
>    #
>    # Just list the languages in decreasing order of preference. We have
>    # more or less alphabetized them here. You probably want to change 
> this.
>    #
>    <IfModule mod_negotiation.c>
>        LanguagePriority en da nl et fr de el it ja kr no pl pt pt-br 
> ru ltz ca es sv tw
>    </IfModule>
>
>    #
>    # AddHandler allows you to map certain file extensions to "handlers",
>    # actions unrelated to filetype. These can be either built into the 
> server
>    # or added with the Action command (see below)
>    #
>    # If you want to use server side includes, or CGI outside
>    # ScriptAliased directories, uncomment the following lines.
>    #
>    # To use CGI scripts:
>    #
>    #AddHandler cgi-script .cgi
>
>    #
>    # To use server-parsed HTML files
>    #
>    #AddType text/html .shtml
>    #AddHandler server-parsed .shtml
>
>    #
>    # Uncomment the following line to enable Apache's send-asis HTTP file
>    # feature
>    #
>    #AddHandler send-as-is asis
>
>    #
>    # If you wish to use server-parsed imagemap files, use
>    #
>    #AddHandler imap-file map
>
>    #
>    # To enable type maps, you might want to use
>    #
>    #AddHandler type-map var
>
> </IfModule>
> # End of document types.
>
> #
> # Action lets you define media types that will execute a script whenever
> # a matching file is called. This eliminates the need for repeated URL
> # pathnames for oft-used CGI file processors.
> # Format: Action media/type /cgi-script/location
> # Format: Action handler-name /cgi-script/location
> #
>
> #
> # MetaDir: specifies the name of the directory in which Apache can find
> # meta information files. These files contain additional HTTP headers
> # to include when sending the document
> #
> #MetaDir .web
>
> #
> # MetaSuffix: specifies the file name suffix for the file containing the
> # meta information.
> #
> #MetaSuffix .meta
>
> #
> # Customizable error response (Apache style)
> #  these come in three flavors
> #
> #    1) plain text
> #ErrorDocument 500 "The server made a boo boo.
> #  n.b.  the single leading (") marks it as text, it does not get output
> #
> #    2) local redirects
> #ErrorDocument 404 /missing.html
> #  to redirect to local URL /missing.html
> #ErrorDocument 404 /cgi-bin/missing_handler.pl
> #  N.B.: You can redirect to a script or a document using 
> server-side-includes.
> #
> #    3) external redirects
> #ErrorDocument 402 http://www.example.com/subscription_info.html
> #  N.B.: Many of the environment variables associated with the original
> #  request will *not* be available to such a script.
>
> #
> # Customize behaviour based on the browser
> #
> <IfModule mod_setenvif.c>
>
>    #
>    # The following directives modify normal HTTP response behavior.
>    # The first directive disables keepalive for Netscape 2.x and 
> browsers that
>    # spoof it. There are known problems with these browser 
> implementations.
>    # The second directive is for Microsoft Internet Explorer 4.0b2
>    # which has a broken HTTP/1.1 implementation and does not properly
>    # support keepalive when it is used on 301 or 302 (redirect) 
> responses.
>    #
>    BrowserMatch "Mozilla/2" nokeepalive
>    BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 
> force-response-1.0
>
>    #
>    # The following directive disables HTTP/1.1 responses to browsers 
> which
>    # are in violation of the HTTP/1.0 spec by not being able to grok a
>    # basic 1.1 response.
>    #
>    BrowserMatch "RealPlayer 4\.0" force-response-1.0
>    BrowserMatch "Java/1\.0" force-response-1.0
>    BrowserMatch "JDK/1\.0" force-response-1.0
>
> </IfModule>
> # End of browser customization directives
>
> #
> # Allow server status reports, with the URL of 
> http://servername/server-status
> # Change the "10.198.135.33" to match your domain to enable.
> #
> #<Location /server-status>
> #    SetHandler server-status
> #    Order deny,allow
> #    Deny from all
> #    Allow from 10.198.135.33
> #</Location>
>
> #
> # Allow remote server configuration reports, with the URL of
> # http://servername/server-info (requires that mod_info.c be loaded).
> # Change the "10.198.135.33" to match your domain to enable.
> #
> #<Location /server-info>
> #    SetHandler server-info
> #    Order deny,allow
> #    Deny from all
> #    Allow from 10.198.135.33
> #</Location>
>
> #
> # There have been reports of people trying to abuse an old bug from 
> pre-1.1
> # days.  This bug involved a CGI script distributed as a part of Apache.
> # By uncommenting these lines you can redirect these attacks to a logging
> # script on phf.apache.org.  Or, you can record them yourself, using 
> the script
> # support/phf_abuse_log.cgi.
> #
> #<Location /cgi-bin/phf*>
> #    Deny from all
> #    ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi
> #</Location>
>
> ### Section 3: Virtual Hosts
> #
> # VirtualHost: If you want to maintain multiple domains/hostnames on your
> # machine you can setup VirtualHost containers for them. Most 
> configurations
> # use only name-based virtual hosts so the server doesn't need to 
> worry about
> # IP addresses. This is indicated by the asterisks in the directives 
> below.
> #
> # Please see the documentation at 
> <URL:http://www.apache.org/docs/vhosts/>
> # for further details before you try to setup virtual hosts.
> #
> # You may use the command line option '-S' to verify your virtual host
> # configuration.
>
> #
> # Use name-based virtual hosting.
> #
> #NameVirtualHost *:80
>
> #
> # VirtualHost example:
> # Almost any Apache directive may go into a VirtualHost container.
> # The first VirtualHost section is used for requests without a known
> # server name.
> #
> #<VirtualHost *:80>
> #    ServerAdmin webmaster@dummy-host.example.com
> #    DocumentRoot /www/docs/dummy-host.example.com
> #    ServerName dummy-host.example.com
> #    ErrorLog logs/dummy-host.example.com-error_log
> #    CustomLog logs/dummy-host.example.com-access_log common
> #</VirtualHost>
>
Phil,

Per Yoav's comment, remove the ajp14 connector from your 
workers.properties ... this is causing the error you see in the mod_jk 
log file. The reason that the test.jsp isn't loading correctly, is 
because you're not putting it somewhere that Apache knows to send it 
over to Tomcat. It sounds like you're putting the file either in 
"D:/webserver/apache/Apache/htdocs", or in Tomcat's 'webapps' directory 
... either place, this isn't right.

To test if your Apache+mod_jk+Tomcat config is working, see if you can 
get to:

http://localhost/manager/html/list

If this prompts you for a login, then its working ... as this is the 
login for Tomcat's manager application.

If you look in the mod_jk.conf file - you'll see that only a certain 
select contexts are being exported to Apache ... /manager, /admin, 
/examples, /tomcat-docs, /webdav (did I miss any?) - to have something 
like http://localhost/test.jsp work, you'd need to define a ROOT context 
in Tomcat (there's actually one already configured in your server.xml, 
its just commented out) - and then after you restart Tomcat, the 
mod_jk.conf file should have JKMount lines reading "/" and "/*" .. that 
should ensure that any file placed in the web-application the ROOT 
context is pointing to (webapps/ROOT, by default) - will get 
appropriately served up by Tomcat.

So, you could enable the "ROOT" context in server.xml, restart Tomcat, 
restart Apache (to pick up the new mod_jk.conf), then put your test.jsp 
in webapps/ROOT - and *then* http://localhost/test.jsp *should* work.

Respectfully,
Brice Ruth

-- 
Brice Ruth, Sr. IT Analyst
Fiskars Brands Inc
http://www.fiskarsbrands.com/


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


Mime
View raw message