Hi André, Those notes are very succinct. Appreciate it. Thank you for sharing.
-Shanti On Wed, Apr 24, 2013 at 4:45 AM, André Warnier <a...@ice-sa.com> wrote: > André Warnier wrote: > >> Shanti Suresh wrote: >> >>> André >>> >>> Please kindly share the half-page that you have written up so far. >>> Actually, would you please finish it up and then post? >>> >>> >> Well, here you go. Luckily, it was still in my drafts folder. >> Remember that it was a draft, and that a more accurate explanation is >> available in the Servlet Spec. >> >> >> >> A HTTP request looks like this : >> >> GET /the_url.. HTTP/1.1<CR/LF> >> Host: somehost.company.com<CR/LF> >> .. >> >> The "Host:" header is examined first, to find out to which configured >> Tomcat <Host> this request is addressed. If a matching Host is found, then >> this will be the one which processes this request further. If none is >> found, then the request will be processed by Tomcat's default <Host> (the >> one named in the <Engine> tag). >> >> Then comes the evaluation of the URL ("/the_url.."). >> Within the selected <Host>, Tomcat will first attempt to match the first >> part of the URL with (the path of) one of the (non-ROOT) defined contexts. >> If a match is found, the request will be passed to that context for >> processing (*). >> If no match is found, and there is no default context defined, then >> Tomcat will return an error to the client. >> If there is a default context defined, then Tomcat will pass this request >> to the default context (the one under (appBase)/ROOT) for processing. >> Within that default context, a match will then be attempted with any of >> the <url-mapping> elements of that default context. If a mapping is found, >> the request will be passed to the corresponding servlet for processing. >> If no mapping is found, the request will be passed to the default servlet >> of the default context for processing. That one attempts to find a file on >> disk within the default context, which matches the path indicated by the >> URL. If it finds one, the file will be returned as the response. If no such >> file is found, a 404 error will be returned. >> >> (*) within a matching context, there will be further matching of the >> second part of the URL, with one the defined servlet's <url-mapping> >> elements. >> >> addendum : and (as this was an unfunished draft) > I should have added that each non-ROOT context also has a default servlet, > inherited from the default (catalina_base)/conf/web.xml. > So if within a context no appropriate <url-mapping> can be found for this > request to this context, the request will be processed by the default > servlet of that context, which will look for a file on disk to satisfy the > request. And if it doesn't find one, it will return a 404 error. > > I should also have added that the URL-mapping as described above is a bit > rough, and that the Servlet Spec explains more accurately how this is done. > > > ------------------------------**------------------------------**--------- > To unsubscribe, e-mail: > users-unsubscribe@tomcat.**apache.org<users-unsubscr...@tomcat.apache.org> > For additional commands, e-mail: users-h...@tomcat.apache.org > >