Hi Chris,

I have already a Root folder /git/app/apache-tomcat-10.1.11/webapps, I see
the files index.jsp and index.jsp has below configuration.
So should I add server.xml under ROOT folder aswell with localhost and
example.com such that both the urls are accessible. ? Please suggest

<% response.sendRedirect("/towl"); %>

Thanks,
amm

On Mon, Apr 22, 2024 at 11:21 AM lavanya tech <lavanyatech...@gmail.com>
wrote:

> Hi Chris,
>
> Could you please explain, what you exactly mean ? So here redirect is not
> a solution right ?
>
> "You'd have to use a glob/regex if
> you wanted to check for [anything and maybe nothing.]example.com."
>
> Thanks,
> ammu
>
>
>
>
> On Fri, Apr 19, 2024 at 3:03 PM Christopher Schultz <
> ch...@christopherschultz.net> wrote:
>
>> Ammu,
>>
>> On 4/19/24 08:32, lavanya tech wrote:
>> > Thank you very much. I removed <Host> for example.com as well as
>> adding an
>> > <Alias> in server.xml
>> > I copied context.xml file
>> > /git/app/apache-tomcat-10.1.11/webapps/towl/META-INF/context.xml
>> > Removed < in rewrite.config files.
>> >
>> > But still I dont redirect the URL.
>>
>> If you have <Context> in server.xml and also your application in the
>> webapps/ directory, then you will be double-deploying your application.
>>
>> Re-name /git/app/apache-tomcat-10.1.11/webapps/towl/ to be
>> /git/app/apache-tomcat-10.1.11/webapps/ROOT (the capitals are important)
>> and remove the <Context> element from your server.xml.
>>
>> Then start your server and read the logs.
>>
>> > *nslookup alias.example.com <http://alias.example.com>
>> > gives-->Non-authoritative answer:Name:     www.example.com
>> > <http://www.example.com>Address:  192.168.200.10Aliases:
>> alias.example.com
>> > <http://alias.example.com>*
>> >
>> >
>> > Just to give some information here, *www.example.com
>> > <http://www.example.com>* has alias* "alias.example.com
>> > <http://alias.example.com>"*
>> > But https://www.example.com:7777/example --> works fine with out
>> issues but
>> > the alias doesnot works (https://alias.example.com)
>> > So i am not sure if the redirect url helps or if its correct
>>
>> Your rewrite configuration says that you have to be using host
>> "example.com" but your request goes to www.example.com. Your
>> configuration should only redirect a request such as:
>>
>> $ curl -v http://example.com:7777/something
>>
>> HTTP/1.1 301 Moved Permanently
>> ...
>> Location: https://www.example.com:7777/example
>>
>> If you make a request like:
>>
>> $ curl -v http://www.example.com:7777/something
>>
>> I wouldn't expect a redirect because of your "host" condition. The
>> "%{HTTP_HOST} example.com" looks at the entire Host header and not just
>> anything that ends in "example.com". You'd have to use a glob/regex if
>> you wanted to check for [anything and maybe nothing.]example.com.
>>
>> You'd also have to make sure that your application is serving responses
>> to requests to / which is why I'm recommending you use the ROOT web
>> application name instead of "towl".
>>
>> -chris
>>
>> > On Fri, Apr 19, 2024 at 1:21 PM Christopher Schultz <
>> > ch...@christopherschultz.net> wrote:
>> >
>> >> Ammu,
>> >>
>> >> On 4/18/24 09:34, lavanya tech wrote:
>> >>> I am attaching server.xml and context.xml and rewrite.config files.
>> >>> The paths are
>> >>>
>> >>> /git/app/apache-tomcat-10.1.11/webapps/towl/context.xml
>> >>> <Context>
>> >>>       <Valve
>> className="org.apache.catalina.valves.rewrite.RewriteValve"
>> >> />
>> >>>       <!-- Other context configuration -->
>> >>> </Context>
>> >>
>> >> This file ^^^ is in the wrong place. It should be in
>> >> /git/app/apache-tomcat-10.1.11/webapps/towl/META-INF/context.xml
>> >>
>> >>> /git/app/apache-tomcat-10.1.11/webapps/towl/WEB-INF/rewrite.config
>> >>>
>> >>> <RewriteCond %{HTTP_HOST} example.com [NC]
>> >>> <RewriteRule ^/(.*)$ https://www.example.com:7777/example [R=301,L]
>> >>
>> >> Why do you have < symbols at the beginning of these lines?
>> >>
>> >>> server.xml
>> >>>
>> >>   > [...]
>> >>>
>> >>>         <Host name="example.com" appBase="webapps" unpackWARs="true"
>> >>> autoDeploy="true">
>> >>>             <Context path="" docBase="towl" />
>> >>
>> >> It's best not to define any <Context> in server.xml. I would remove
>> this
>> >> <Context> entirely and allow Tomcat to auto-reploy from your
>> >> webapps/towl directory. If you need this application to be deployed as
>> >> the ROOT context (on / and not /towl) then you should re-name
>> >> /git/app/apache-tomcat-10.1.11/webapps/towl to
>> >> /git/app/apache-tomcat-10.1.11/webapps/ROOT
>> >>
>> >> You also don't need a <Host> for example.com as well as adding an
>> >> <Alias> for the same domain (though this is probably to anonymize the
>> >> configuration). You can feel free to simply use the "localhost" <Host>
>> >> as the default <Host> and deploy everything into it. This makes your
>> >> configuration changes relative to a stock Tomcat less significant and
>> >> easier to apply to new versions if/when necessary.
>> >>
>> >> -chris
>> >>
>> >>> On Thu, Apr 18, 2024 at 2:17 PM Christopher Schultz <
>> >>> ch...@christopherschultz.net> wrote:
>> >>>
>> >>>> Ammu,
>> >>>>
>> >>>> On 4/18/24 07:45, lavanya tech wrote:
>> >>>>> I added classname rewrite valeus in contex.xml file .
>> >>>>>
>> >>>>>        <!-- REWRITE VALVE -->
>> >>>>>        <Valve
>> >> className="org.apache.catalina.valves.rewrite.RewriteValve"
>> >>>> />
>> >>>>>        <!-- // -->
>> >>>>>
>> >>>>> created rewrite.config so both of them is located under  conf under
>> >>>>> apache-tomcat.
>> >>>>>
>> >>>>>
>> >>>>>                        <RewriteCond %{HTTP_HOST} example.com [NC]
>> >>>>>                        <RewriteRule ^/(.*)$
>> >>>>> https://www.example.com:7777/example [R=301,L]
>> >>>>>
>> >>>>> So according to the documentaion they say context.xml should be
>> placed
>> >>>>> under webapps and rewrite.config file should be put in WEB-INF
>> folder
>> >> of
>> >>>>> apache-tomcat . I placed and restarted tomcat webserver but still it
>> >>>>> doesnot redirect.
>> >>>>
>> >>>> Can you give full paths to both server.xml and rewrite.config,
>> re-post
>> >>>> your current server.xml <Context> element, and the complete contents
>> of
>> >>>> rewrite.config?
>> >>>>
>> >>>> Have you looked at the log files after start?
>> >>>>
>> >>>> -chris
>> >>>>
>> >>>>> On Thu, Apr 18, 2024 at 1:36 PM lavanya tech <
>> lavanyatech...@gmail.com
>> >>>
>> >>>>> wrote:
>> >>>>>
>> >>>>>> Hi Thomas,
>> >>>>>>
>> >>>>>> Thanks for the fast response.
>> >>>>>>
>> >>>>>> I added classname rewrite valeus in contex.xml file .
>> >>>>>>
>> >>>>>>        <!-- REWRITE VALVE -->
>> >>>>>>        <Valve
>> >> className="org.apache.catalina.valves.rewrite.RewriteValve"
>> >>>> />
>> >>>>>>        <!-- // -->
>> >>>>>>
>> >>>>>> created rewrite.config so both of them is located under  conf under
>> >>>>>> apache-tomcat.
>> >>>>>>
>> >>>>>> So according to the documentaion they say context.xml should be
>> placed
>> >>>>>> under webapps and rewrite.config file should be put in WEB-INF
>> folder
>> >> of
>> >>>>>> apache-tomcat
>> >>>>>>
>> >>>>>> Thnks,
>> >>>>>> Ammu
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>> On Thu, Apr 18, 2024 at 1:22 PM Mark Thomas <ma...@apache.org>
>> wrote:
>> >>>>>>
>> >>>>>>> On 18/04/2024 12:05, lavanya tech wrote:
>> >>>>>>>> Hi Team,
>> >>>>>>>>
>> >>>>>>>> I am using "Tomcat 10.1" in our environment and I wanted to
>> redirect
>> >>>> url
>> >>>>>>>> from https://example.com to https://www.servercom:7777 and for
>> >> this i
>> >>>>>>>> modified the server.xml as below in tomcat config, and the below
>> >>>>>>>> configuration doesnot seems to work. Does anyone has ideas.
>> Please
>> >>>>>>> suggest.
>> >>>>>>>> The url alone https://www.servercom:7777/ already works. But
>> just
>> >>>>>>>> redirection from the old to one doesnot.
>> >>>>>>>>
>> >>>>>>>> <Host name="example.com" appBase="app" unpackWARs="true"
>> >>>>>>> autoDeploy="true">
>> >>>>>>>>         <Context path="" docBase="example" />
>> >>>>>>>>         <Alias>example.com</Alias>
>> >>>>>>>>         <!-- Add RewriteValve and RewriteRule here -->
>> >>>>>>>>         <Valve
>> >>>>>>> className="org.apache.catalina.valves.rewrite.RewriteValve"/>
>> >>>>>>>>         <Engine name="Catalina" defaultHost="localhost">
>> >>>>>>>>             <Host name="example.com" appBase="app"
>> unpackWARs="true"
>> >>>>>>>> autoDeploy="true">
>> >>>>>>>>                 <Context path="" docBase="example" />
>> >>>>>>>>                 <Alias>example.com</Alias>
>> >>>>>>>>                 <Valve
>> >>>>>>> className="org.apache.catalina.valves.rewrite.RewriteValve"/>
>> >>>>>>>>                 <Engine name="Catalina" defaultHost="localhost">
>> >>>>>>>>                     <Host name="example.com" appBase="app"
>> >>>>>>>> unpackWARs="true" autoDeploy="true">
>> >>>>>>>>                         <Context path="" docBase="example" />
>> >>>>>>>>                         <Alias>example.com</Alias>
>> >>>>>>>>                         <!-- Rewrite rule to redirect to
>> >>>>>>>> www.servercom:8080/example -->
>> >>>>>>>>                         <RewriteCond %{HTTP_HOST} example\.com
>> [NC]
>> >>>>>>>>                         <RewriteRule ^/(.*)$
>> >>>>>>>> https://www.servercom:7777/example/$1 [R=301,L]
>> >>>>>>>
>> >>>>>>> 1. That isn't valid XML.
>> >>>>>>>
>> >>>>>>> 2. Where in the Tomcat docs does it say you can nest re-write
>> rules
>> >> in
>> >>>> a
>> >>>>>>> Host element (or any other element)?
>> >>>>>>>
>> >>>>>>>>                     </Host>
>> >>>>>>>>                 </Engine>
>> >>>>>>>>             </Host>
>> >>>>>>>>         </Engine>
>> >>>>>>>> </Host>
>> >>>>>>>
>> >>>>>>> You need to configure the RewriteValve.
>> >>>>>>> https://tomcat.apache.org/tomcat-10.1-doc/rewrite.html
>> >>>>>>>
>> >>>>>>> Mark
>> >>>>>>>
>> >>>>>>>
>> ---------------------------------------------------------------------
>> >>>>>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>> >>>>>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>> >>>>>>>
>> >>>>>>>
>> >>>>>
>> >>>>
>> >>>> ---------------------------------------------------------------------
>> >>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>> >>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>> >>>>
>> >>>>
>> >>>
>> >>
>> >> ---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>> >> For additional commands, e-mail: users-h...@tomcat.apache.org
>> >>
>> >>
>> >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>
>>

Reply via email to