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 >> >>