-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Marc,
On 10/20/16 11:34 AM, Marc Chamberlin wrote: > On 10/20/2016 3:19 AM, André Warnier (tomcat) wrote: >> On 20.10.2016 01:58, Christopher Schultz wrote: >>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 >>> >>> Marc, >>> >>> On 10/18/16 7:59 PM, Marc Chamberlin wrote: >>>> On 10/17/2016 10:36 AM, Rainer Jung wrote: >>>>> >>>>> Alias maps URIs to local file system directories. JkMount >>>>> maps URIs to remote back end requests. >>>>> >>>>> You can not change JkMount forwarding using Alias (except >>>>> that if you have a comflict between Alias and JkMount only >>>>> one of them wins). >>>>> >>>>> As far as I understand you are not really trying to map >>>>> requests to the local web server file system, but instead >>>>> want to forward to a Tomcat back end but change the URI >>>>> path which is used when accessing Apache to something else >>>>> being used to acces Tomcat. E.g. the URI >>>>> /jsp-examples/something gets used when accessing Apache and >>>>> mod_jk should send this request as /examples/jsp/something >>>>> to the Tomcat back end. >>>>> >>>>> If you really need to change URIs, then often mod_proxy is >>>>> much easier to set up, because it has specific directives >>>>> for this (ProxyPass etc.). >>>>> >>>>> With mod_jk you would first need to use mod_rewrite >>>>> RewriteRules to change the URI, and then JkMount to forward >>>>> them. More details can be found at >>>>> >>>>> http://tomcat.apache.org/connectors-doc/common_howto/proxy.html#UR L%2 >>> >>>>> 0Rewriting >>>>> >>>>> >>>>> >>>>> >>> The rest of this docs page might be useful as well. >>>>> >>>>> Regards, >>>>> >>>>> Rainer >>>>> >>>> Thanks a million Rainer, you got me over that hump! I have >>>> it working now but have another question - When the response >>>> is generated for a request, that used the alias in the URL, >>>> is there a way to keep the client browser from displaying >>>> what the alias got mapped to? >>>> >>>> So for example, if I use the alias in the URL - >>>> http://www.mydomain.com/jsp-examples that I send to the >>>> Apache server, and it in turn forwards that request to Tomcat >>>> as http://www.mydomain.com/examples/jsp, I would prefer that >>>> the response, sent back to the user, contains the original, >>>> aliased or unaliased, version of the URL that he/she typed, >>>> and not just the resolved version. As it stands I am always >>>> getting the response URL of >>>> http://www.mydomain.com/examples/jsp displayed in the client >>>> browser. >>>> >>>> What follows is my current version of the config file that I >>>> am using for the jsp-examples. Seems to be working mostly OK, >>>> so hopefully I am on the right track. FYI - I intend to >>>> include these config files in various virtual hosts >>>> configurations each of which have their own document root, >>>> hence the reason for the Alias commands at the beginning of >>>> this config file. >>>> >>>> Thanks again in advance for any and all offers of help, >>>> thoughts, and replies... >>> >>> Your best bet is to name the context in Tomcat to be whatever >>> you really want the URL path to be. This will remove all kinds >>> of problems you are likely to see in the future because of your >>> decision to try to rewrite URLs. >>> >>> I never understand why people would rather spend a great deal >>> of time configuring around the fact that this simple command >>> will get everything working without any other issues: >>> >>> $ mv webapps/name-you-have webapps/name-you-want >>> >> +10 Because once you start playing with Aliases and RewriteRules, >> you are setting yourself up for a lot of future additional >> complications in terms of Redirects, Authentication, etc.. most >> of which you cannot even imagine right now. >> > Thanks Christopher, Andre for your comments and I will certainly > take them under consideration. If I were working in a simple > environment where all I had to do was to focus on Tomcat and Apache > I would certainly agree with you. Your simplistic solution of > renaming directories would indeed be the correct choice. > > The problem is, is that the real world is not quite so > accommodating. I am trying to support a team of users who are using > other third party applications and also using cross-sectional tools > that require multiple resources/directories in the Tomcat/Apache > web directories, that all need to be coordinated. Some of this can > be solved with directory renaming or links, but in some cases it > becomes a question of whether the dog is wagging the tail or the > tail is wagging the dog in terms of the amount of work involved to > solve a problem; such as a simple Tomcat/Apache alone related > answer (directory renaming) implies. So I am exploring the choices > I have within the Tomcat/Apache tool space in order to determine > what choice is best. If indeed the tools available within Tomcat > and Apache are so odious to use, then yes I will also have to > explore the option of changing other tools, software, and > configurations in order to accommodate Tomcat and Apache. It's not a question of whether of not the tools are odious, it's the fact that a highly-complicated environment is going to require highly-complicated configuration. I'm suggesting that you simplify things. You will quickly find that you will need to start re-writing entire pages of content to fix-up link URLs and stuff like that. mod_proxy will only auto-rewrite headers such as Location (for redirects) and Set-Cookie; it will not fix all of the links that the web application produces. At the point that you start re-writing entire pages of content as they traverse your reverse-proxy is when you know you are really fighting against a Better Way of doing things. Are you suggesting that your environment is so complex that it is not possible to change the name of a single file/directory (possibly amongst a cluster of servers, of course)? The alternative is miles of configuration that probably will always have some kind of problem with it because you have missed an edge case. > My understanding of Tomcat and Apache is that they are supposedly > robust enterprise grade tools, designed to work in complex > environments. So my hope is that issues like this have been already > addressed with elegant solutions. ;-) The elegant solution is to re-name your application to the context-path you want to use, rather than using a mountain of band-aids. This is not a problem unique to Tomcat and/or Apache httpd. You'll find this same problem with every other reverse proxy / servlet container combination that I know of. > FYI I am using the jsp and servlet examples here as just a simple > model of what I want to accomplish. I could really care less about > those particular web applications. Understood. - -chris -----BEGIN PGP SIGNATURE----- Comment: GPGTools - http://gpgtools.org Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQIcBAEBCAAGBQJYCO97AAoJEBzwKT+lPKRYspcP/j58DLdp/kELZYOhY80mqhb4 POyuogOBb/sUmpMES3PBbctx/CaPoFo4p8DO3Z2kRc5z13lpznfIMs32vDadPFrf 6STMzOQY8FnxC6o8Rf/wBxRCtk4OI0u359o2+y0nbmc7iOHoaLXUx9Ms/WzlNz6z UNxBrJh1c3e5qSsdnJMOKAWnUv0jNqT1dol9jqLjtgzUtGKVcayPTObQxajAPMcf H13qrk722obLwRPhTdV/Gm9JrzJ0Vw167zfirDT754rLYpTs2DNgw2Zl76TQiVut R4RRZD2Wn+1pfYakhSGDN5cECuirXXKIHPHcZmpLsfneuoXw7AWgnlLBSjRLLKp9 /WTmzYVme5Le9I5+mK6qT0xI7kJ+SDAIDLI2WwKbyZzhEG51tMe5NkWNmwwsGTZ6 5bOWNz2ROx8l4qIlmHT0EGmftM+bXs+xNtUxMkeZHYmolvkv/9D5fyDOoO4zI8CS C2YJy13VPmu31Dqa8cOyVyCJw6J3ZUiO/Dyh0dqmkFMMsJfxyCuRwYG2uDzovBdw dDh5+EVYhhYXqCkzV3S5bzrClbsXgZIYNrWwau3oOm/QelbYoqQ6ul9JPuCQ7dA7 NopwZDOYEE0TaGRP8riNw8ziN5d1X2zGEdoNnXuSte8MLylu8FFctgtBGQoVjhZi /PqoEOUCUv583Qbob5v0 =QGpl -----END PGP SIGNATURE----- --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org