Which server (Apache or Tomcat) actually serves the file has nothing to do with file location.

Which server (Apache or Tomcat) actually serves the file is completely
driven by the JkMount directives.  JkMount is inclusive...that is,
unless you define a JkMount for a particular URI, the file will be
served by Apache.

Thus:

JkMount /*.jsp ajp13
JkMount /servlet/* ajp13

means that ONLY JSP and servlet will be handled by Tomcat, ALL OTHER
requests will be handled by Apache.

Thus, putting your static resources under your web application's
directory structure makes it easier on you when deploying, because you
only have to deploy to one location.  Again, where the files are located
has NOTHING to do with which server (Apache or Tomcat) handles the request.

By "DocumentRoot" I mean "tell Apache where the DocumentRoot is".  Thus,
with a DocumentRoot equal to the location of your Tomcat web
application, all of your files can exist in one location, and as long as
Apache has access permisssions to the web application root directory,
Apache will handle requests for those files, not Tomcat.

webapps
...geode
......index.jsp
......static.html
......image.gif
......WEB-INF
.........web.xml
.........classes
............YourServlet.class

DocumentRoot equals CATALINA_HOME/webapps/geode

http://host/geode/static.html works.
http://host/geode/image.gif works.
http://host/geode/index.jsp works.
http://host/geode/servlet/* works (provided you map your servlets
correctly in webapps/geode/WEB-INF/web.xml).

John

v.siguier wrote:

I would like to put .html files under htdocs/geode, .js under htdocs/geode/javascript 
and all images under htdocs/geode/images.
If the user want to access to a html file (http://host:port/geode/*.html), I want it 
to be served by Apache.
If the user want to access to a servlet (http://host:port/geode/servlet/*), I want it 
to be served by Tomcat.
If the user want to access to a jsp (http://host:port/geode/jsp/*.jsp), I want it to 
be served by Tomcat.

I hope these precision will help you to understand exactly what I try to do.
What do you mean by DocumentRoot "C:/jakarta-tomcat-4-1-24/webapps/geode" ?


Thank you for your help.



DocumentRoot "C:/jakarta-tomcat-4-1-24/webapps/geode"

You will need to copy the mod_jk.conf file to some other location and modify it manually. Change your Include line in httpd.conf to reflect the new location. I like to put mine in the Apache conf directory.

I'm not sure what you mean exactly by "directly under Apache"...as Apache doesn't care where files are located as long as it has the appropriate permissions to access them and can find them. Your files do not have to be under any particular directory.

I'd have to know more about where you want to put your static resources exactly.

Another option is to do something like:

Alias /static "C:/path/to/static/stuff"

There are various ways to do it, without knowing exactly what your dir structure is, what URL you want to use, etc. it is hard to give you a specific answer. In any case, you will likely have to modify mod_jk.conf by hand, which means putting it in a location where it won't be overwritten each time you start Tomcat, otherwise you will have to make the same changes over and over again.

The whole mod_jk.conf thing is a convenience. It doesn't scale very well at all. I don't use it for my production servers, I make my changes by hand. Its in my HOWTO because its the easiest way for a newbie to get up and running. For complex setups (especially multiple virtual hosts and multiple webapps) you will want to avoid relying on it.

John

v.siguier wrote:


No problem, my question is :
I have configured Apache and Tomcat with mod_jk in order to connect them together but 
now all ressources of my application must be located under Tomcat directory to be 
founded.
As I want to put all static ressources directly under Apache, somebody can tell me 
what I have to configure in Apache or Tomcat to do this ?







--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to