You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by "David Smiley @MITRE.org" <DS...@mitre.org> on 2010/08/20 17:52:43 UTC

Deploying a war to the root URL path

Greetings folks.

I have a war file that I'd like to deploy to the root (i.e. blank or '/'
)URL since my server is dedicated to this web application.  I also have a
Tomcat context xml snippet to accompany it in some way so that I can
configure things like my database in JNDI.  As a matter of taste, I'd prefer
not to name my war "ROOT.war", I'd like it to be named after what it is,
which is JIRA -- so jira.war.  And I'd like it to be in Tomcat's webapp
directory since that is the expected place to find webapps.  I don't mind
naming my context xml snippet file ROOT.xml.  Is what I'm asking for
possible?  I've not figured out how to do this despite trying a large
variety of things with the context docBase and naming the ROOT.xml
differently.  I've resorted to naming my war file ROOT.war which works but I
don't like it.  My ROOT.xml is in TOMCAT_HOME/conf/Catalina/localhost/.  

FWIW, I'm using Tomcat 6 fronted by Apache via AJP.

~ David Smiley
-- 
View this message in context: http://old.nabble.com/Deploying-a-war-to-the-root-URL-path-tp29493194p29493194.html
Sent from the Tomcat - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: Deploying a war to the root URL path

Posted by Jeffrey Janner <Je...@PolyDyne.com>.
All that having been said, it's still easiest to just rename jira.war as
ROOT.war and deploy that.
That really is the simplest method and well documented to boot.

> -----Original Message-----
> From: David Smiley @MITRE.org [mailto:DSMILEY@mitre.org]
> Sent: Tuesday, August 24, 2010 10:43 AM
> To: users@tomcat.apache.org
> Subject: RE: Deploying a war to the root URL path
> 
> 
> It's true I can host the app at /jira but that feel very redundant
when
> the
> host is dedicated to jira as it is (it's DNS name is even jira).
> Perhaps
> I'll just do this.  Thanks Jeff.
> 
> ~ David
> 
> 
> Jeffrey Janner wrote:
> >
> > I'm not positive, but I think Chuck neglected to mention that the
> > docbase needs to contain the war in exploded format.  If I'm wrong,
> > please slap my wrist Chuck.
> >
> > Also, I'm surprised no one offered the obvious tuckey redirector
> > solution, which usually gets brought up a lot on this list.
> > You can always deploy your jira.war as normal, but also create a
> > ROOT.war that contains the tuckey redirector configured to redirect
> ALL
> > requests to insert "/jira" after the hostname of every request.
This
> > will add a little overhead, but probably only on the initial
> > http://hostname request.
> >
> > Jeff
> >
> >> -----Original Message-----
> >> From: David Smiley @MITRE.org [mailto:DSMILEY@mitre.org]
> >> Sent: Friday, August 20, 2010 12:12 PM
> >> To: users@tomcat.apache.org
> >> Subject: RE: Deploying a war to the root URL path
> >>
> >>
> >> Ok, thanks Chuck.  Perhaps I'll put my war elsewhere... I just
don't
> >> know
> >> where it would be best placed.
> >> ~ David
> >>
> >>
> >> n828cl wrote:
> >> >
> >> >> From: David Smiley @MITRE.org [mailto:DSMILEY@mitre.org]
> >> >> Subject: Deploying a war to the root URL path
> >> >>
> >> >> As a matter of taste, I'd prefer not to name my war "ROOT.war"
> >> >
> >> > So you don't want to do things the easy way...
> >> >
> >> >> I'd like it to be named after what it is, which is JIRA
> >> >> -- so jira.war.  And I'd like it to be in Tomcat's webapp
> >> >> directory since that is the expected place to find webapps.
> >> >
> >> > You can't do both.  Either follow standard practice and rename
the
> >> file to
> >> > ROOT.war, or keep it outside of the <Host> appBase directory and
> >> create a
> >> > conf/Catalina/[host]/ROOT.xml file containing a <Context> element
> >> with a
> >> > docBase attribute that points to the location of jira.war.  One
of
> >> the
> >> > advantages of keeping production webapps outside of the <Host>
> >> appBase, is
> >> > that it makes upgrading from one Tomcat version to another much
> >> easier.
> >> >
> >> >  - Chuck
> >> >
> >> >
> >> > THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE
> >> PROPRIETARY
> >> > MATERIAL and is thus for use only by the intended recipient. If
> you
> >> > received this in error, please contact the sender and delete the
> e-
> >> mail
> >> > and its attachments from all computers.
> >> >
> >> >
> >> >
> >
---------------------------------------------------------------------
> >> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> >> > For additional commands, e-mail: users-help@tomcat.apache.org
> >> >
> >> >
> >> >
> >>
> >> --
> >> View this message in context:
> > http://old.nabble.com/Deploying-a-war-to-
> >> the-root-URL-path-tp29493194p29493909.html
> >> Sent from the Tomcat - User mailing list archive at Nabble.com.
> >>
> >>
> >>
--------------------------------------------------------------------
> -
> >> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> >> For additional commands, e-mail: users-help@tomcat.apache.org
> >>
> >
> >
>
_______________________________________________________________________
> ___
> >
> > Confidentiality Notice:  This Transmission (including any
> attachments) may
> > contain information that is privileged, confidential, and exempt
from
> > disclosure under applicable law.  If the reader of this message is
> not the
> > intended recipient you are hereby notified that any dissemination,
> > distribution, or copying of this communication is strictly
> prohibited.
> >
> > If you have received this transmission in error, please immediately
> reply
> > to the sender or telephone (512) 343-9100 and delete this
> transmission
> > from your system.
> >
> >
> >
---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
> >
> >
> 
> --
> View this message in context:
http://old.nabble.com/Deploying-a-war-to-
> the-root-URL-path-tp29493194p29523408.html
> Sent from the Tomcat - User mailing list archive at Nabble.com.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
> 

__________________________________________________________________________

Confidentiality Notice:  This Transmission (including any attachments) may contain information that is privileged, confidential, and exempt from disclosure under applicable law.  If the reader of this message is not the intended recipient you are hereby notified that any dissemination, distribution, or copying of this communication is strictly prohibited.  

If you have received this transmission in error, please immediately reply to the sender or telephone (512) 343-9100 and delete this transmission from your system.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: Deploying a war to the root URL path

Posted by "David Smiley @MITRE.org" <DS...@mitre.org>.
It's true I can host the app at /jira but that feel very redundant when the
host is dedicated to jira as it is (it's DNS name is even jira).  Perhaps
I'll just do this.  Thanks Jeff.

~ David


Jeffrey Janner wrote:
> 
> I'm not positive, but I think Chuck neglected to mention that the
> docbase needs to contain the war in exploded format.  If I'm wrong,
> please slap my wrist Chuck.
> 
> Also, I'm surprised no one offered the obvious tuckey redirector
> solution, which usually gets brought up a lot on this list.
> You can always deploy your jira.war as normal, but also create a
> ROOT.war that contains the tuckey redirector configured to redirect ALL
> requests to insert "/jira" after the hostname of every request.  This
> will add a little overhead, but probably only on the initial
> http://hostname request.
> 
> Jeff
> 
>> -----Original Message-----
>> From: David Smiley @MITRE.org [mailto:DSMILEY@mitre.org]
>> Sent: Friday, August 20, 2010 12:12 PM
>> To: users@tomcat.apache.org
>> Subject: RE: Deploying a war to the root URL path
>> 
>> 
>> Ok, thanks Chuck.  Perhaps I'll put my war elsewhere... I just don't
>> know
>> where it would be best placed.
>> ~ David
>> 
>> 
>> n828cl wrote:
>> >
>> >> From: David Smiley @MITRE.org [mailto:DSMILEY@mitre.org]
>> >> Subject: Deploying a war to the root URL path
>> >>
>> >> As a matter of taste, I'd prefer not to name my war "ROOT.war"
>> >
>> > So you don't want to do things the easy way...
>> >
>> >> I'd like it to be named after what it is, which is JIRA
>> >> -- so jira.war.  And I'd like it to be in Tomcat's webapp
>> >> directory since that is the expected place to find webapps.
>> >
>> > You can't do both.  Either follow standard practice and rename the
>> file to
>> > ROOT.war, or keep it outside of the <Host> appBase directory and
>> create a
>> > conf/Catalina/[host]/ROOT.xml file containing a <Context> element
>> with a
>> > docBase attribute that points to the location of jira.war.  One of
>> the
>> > advantages of keeping production webapps outside of the <Host>
>> appBase, is
>> > that it makes upgrading from one Tomcat version to another much
>> easier.
>> >
>> >  - Chuck
>> >
>> >
>> > THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE
>> PROPRIETARY
>> > MATERIAL and is thus for use only by the intended recipient. If you
>> > received this in error, please contact the sender and delete the e-
>> mail
>> > and its attachments from all computers.
>> >
>> >
>> >
> ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>> > For additional commands, e-mail: users-help@tomcat.apache.org
>> >
>> >
>> >
>> 
>> --
>> View this message in context:
> http://old.nabble.com/Deploying-a-war-to-
>> the-root-URL-path-tp29493194p29493909.html
>> Sent from the Tomcat - User mailing list archive at Nabble.com.
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>> For additional commands, e-mail: users-help@tomcat.apache.org
>> 
> 
> __________________________________________________________________________
> 
> Confidentiality Notice:  This Transmission (including any attachments) may
> contain information that is privileged, confidential, and exempt from
> disclosure under applicable law.  If the reader of this message is not the
> intended recipient you are hereby notified that any dissemination,
> distribution, or copying of this communication is strictly prohibited.  
> 
> If you have received this transmission in error, please immediately reply
> to the sender or telephone (512) 343-9100 and delete this transmission
> from your system.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
> 
> 
> 

-- 
View this message in context: http://old.nabble.com/Deploying-a-war-to-the-root-URL-path-tp29493194p29523408.html
Sent from the Tomcat - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: Deploying a war to the root URL path

Posted by Jeffrey Janner <Je...@PolyDyne.com>.
Quite right.  I'd skipped over that little throwaway line in his initial post.

> -----Original Message-----
> From: Christopher Schultz [mailto:chris@christopherschultz.net]
> Sent: Wednesday, August 25, 2010 8:35 AM
> To: Tomcat Users List
> Subject: Re: Deploying a war to the root URL path
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Jeffrey,
> 
> On 8/23/2010 12:56 PM, Jeffrey Janner wrote:
> > Also, I'm surprised no one offered the obvious tuckey redirector
> > solution, which usually gets brought up a lot on this list.
> > You can always deploy your jira.war as normal, but also create a
> > ROOT.war that contains the tuckey redirector configured to redirect
> ALL
> > requests to insert "/jira" after the hostname of every request.  This
> > will add a little overhead, but probably only on the initial
> > http://hostname request.
> 
> Since the OP is using Apache httpd with AJP (didn't specifiy mod_jk or
> mod_proxy_ajp), he could also rewrite the URLs on the fly in the httpd
> world and still deploy to /jira in Tomcat.
> 
> - -chris
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (MingW32)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
> 
> iEYEARECAAYFAkx1HAAACgkQ9CaO5/Lv0PAgwgCgo75dx3C155bAzZqwiMPKV1PR
> quMAnjXR7bpVofvBl0xSX+SRd1Aax14m
> =9+6f
> -----END PGP SIGNATURE-----
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
> 

__________________________________________________________________________

Confidentiality Notice:  This Transmission (including any attachments) may contain information that is privileged, confidential, and exempt from disclosure under applicable law.  If the reader of this message is not the intended recipient you are hereby notified that any dissemination, distribution, or copying of this communication is strictly prohibited.  

If you have received this transmission in error, please immediately reply to the sender or telephone (512) 343-9100 and delete this transmission from your system.

Re: Deploying a war to the root URL path

Posted by Christopher Schultz <ch...@christopherschultz.net>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Jeffrey,

On 8/23/2010 12:56 PM, Jeffrey Janner wrote:
> Also, I'm surprised no one offered the obvious tuckey redirector
> solution, which usually gets brought up a lot on this list.
> You can always deploy your jira.war as normal, but also create a
> ROOT.war that contains the tuckey redirector configured to redirect ALL
> requests to insert "/jira" after the hostname of every request.  This
> will add a little overhead, but probably only on the initial
> http://hostname request.

Since the OP is using Apache httpd with AJP (didn't specifiy mod_jk or
mod_proxy_ajp), he could also rewrite the URLs on the fly in the httpd
world and still deploy to /jira in Tomcat.

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkx1HAAACgkQ9CaO5/Lv0PAgwgCgo75dx3C155bAzZqwiMPKV1PR
quMAnjXR7bpVofvBl0xSX+SRd1Aax14m
=9+6f
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: Deploying a war to the root URL path

Posted by Jeffrey Janner <Je...@PolyDyne.com>.
Ouch....

> -----Original Message-----
> From: Caldarale, Charles R [mailto:Chuck.Caldarale@unisys.com]
> Sent: Tuesday, August 24, 2010 10:18 AM
> To: Tomcat Users List
> Subject: RE: Deploying a war to the root URL path
> 
> > From: Jeffrey Janner [mailto:Jeffrey.Janner@PolyDyne.com]
> > Subject: RE: Deploying a war to the root URL path
> >
> > I'm not positive, but I think Chuck neglected to mention that the
> > docbase needs to contain the war in exploded format.  If I'm wrong,
> > please slap my wrist Chuck.
> 
> Consider your wrist slapped; docBase can point to a .war file or the
> expanded directory.
> 
>  - Chuck
> 
> 
> THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE
> PROPRIETARY MATERIAL and is thus for use only by the intended
> recipient. If you received this in error, please contact the sender
and
> delete the e-mail and its attachments from all computers.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
> 

__________________________________________________________________________

Confidentiality Notice:  This Transmission (including any attachments) may contain information that is privileged, confidential, and exempt from disclosure under applicable law.  If the reader of this message is not the intended recipient you are hereby notified that any dissemination, distribution, or copying of this communication is strictly prohibited.  

If you have received this transmission in error, please immediately reply to the sender or telephone (512) 343-9100 and delete this transmission from your system.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: Deploying a war to the root URL path

Posted by "Caldarale, Charles R" <Ch...@unisys.com>.
> From: Jeffrey Janner [mailto:Jeffrey.Janner@PolyDyne.com]
> Subject: RE: Deploying a war to the root URL path
> 
> I'm not positive, but I think Chuck neglected to mention that the
> docbase needs to contain the war in exploded format.  If I'm wrong,
> please slap my wrist Chuck.

Consider your wrist slapped; docBase can point to a .war file or the expanded directory.

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: Deploying a war to the root URL path

Posted by Jeffrey Janner <Je...@PolyDyne.com>.
I'm not positive, but I think Chuck neglected to mention that the
docbase needs to contain the war in exploded format.  If I'm wrong,
please slap my wrist Chuck.

Also, I'm surprised no one offered the obvious tuckey redirector
solution, which usually gets brought up a lot on this list.
You can always deploy your jira.war as normal, but also create a
ROOT.war that contains the tuckey redirector configured to redirect ALL
requests to insert "/jira" after the hostname of every request.  This
will add a little overhead, but probably only on the initial
http://hostname request.

Jeff

> -----Original Message-----
> From: David Smiley @MITRE.org [mailto:DSMILEY@mitre.org]
> Sent: Friday, August 20, 2010 12:12 PM
> To: users@tomcat.apache.org
> Subject: RE: Deploying a war to the root URL path
> 
> 
> Ok, thanks Chuck.  Perhaps I'll put my war elsewhere... I just don't
> know
> where it would be best placed.
> ~ David
> 
> 
> n828cl wrote:
> >
> >> From: David Smiley @MITRE.org [mailto:DSMILEY@mitre.org]
> >> Subject: Deploying a war to the root URL path
> >>
> >> As a matter of taste, I'd prefer not to name my war "ROOT.war"
> >
> > So you don't want to do things the easy way...
> >
> >> I'd like it to be named after what it is, which is JIRA
> >> -- so jira.war.  And I'd like it to be in Tomcat's webapp
> >> directory since that is the expected place to find webapps.
> >
> > You can't do both.  Either follow standard practice and rename the
> file to
> > ROOT.war, or keep it outside of the <Host> appBase directory and
> create a
> > conf/Catalina/[host]/ROOT.xml file containing a <Context> element
> with a
> > docBase attribute that points to the location of jira.war.  One of
> the
> > advantages of keeping production webapps outside of the <Host>
> appBase, is
> > that it makes upgrading from one Tomcat version to another much
> easier.
> >
> >  - Chuck
> >
> >
> > THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE
> PROPRIETARY
> > MATERIAL and is thus for use only by the intended recipient. If you
> > received this in error, please contact the sender and delete the e-
> mail
> > and its attachments from all computers.
> >
> >
> >
---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
> >
> >
> 
> --
> View this message in context:
http://old.nabble.com/Deploying-a-war-to-
> the-root-URL-path-tp29493194p29493909.html
> Sent from the Tomcat - User mailing list archive at Nabble.com.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
> 

__________________________________________________________________________

Confidentiality Notice:  This Transmission (including any attachments) may contain information that is privileged, confidential, and exempt from disclosure under applicable law.  If the reader of this message is not the intended recipient you are hereby notified that any dissemination, distribution, or copying of this communication is strictly prohibited.  

If you have received this transmission in error, please immediately reply to the sender or telephone (512) 343-9100 and delete this transmission from your system.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: Deploying a war to the root URL path

Posted by "David Smiley @MITRE.org" <DS...@mitre.org>.
Ok, thanks Chuck.  Perhaps I'll put my war elsewhere... I just don't know
where it would be best placed.
~ David


n828cl wrote:
> 
>> From: David Smiley @MITRE.org [mailto:DSMILEY@mitre.org]
>> Subject: Deploying a war to the root URL path
>> 
>> As a matter of taste, I'd prefer not to name my war "ROOT.war"
> 
> So you don't want to do things the easy way...
> 
>> I'd like it to be named after what it is, which is JIRA
>> -- so jira.war.  And I'd like it to be in Tomcat's webapp
>> directory since that is the expected place to find webapps.
> 
> You can't do both.  Either follow standard practice and rename the file to
> ROOT.war, or keep it outside of the <Host> appBase directory and create a
> conf/Catalina/[host]/ROOT.xml file containing a <Context> element with a
> docBase attribute that points to the location of jira.war.  One of the
> advantages of keeping production webapps outside of the <Host> appBase, is
> that it makes upgrading from one Tomcat version to another much easier.
> 
>  - Chuck
> 
> 
> THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY
> MATERIAL and is thus for use only by the intended recipient. If you
> received this in error, please contact the sender and delete the e-mail
> and its attachments from all computers.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
> 
> 
> 

-- 
View this message in context: http://old.nabble.com/Deploying-a-war-to-the-root-URL-path-tp29493194p29493909.html
Sent from the Tomcat - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: Deploying a war to the root URL path

Posted by "Caldarale, Charles R" <Ch...@unisys.com>.
> From: David Smiley @MITRE.org [mailto:DSMILEY@mitre.org]
> Subject: Deploying a war to the root URL path
> 
> As a matter of taste, I'd prefer not to name my war "ROOT.war"

So you don't want to do things the easy way...

> I'd like it to be named after what it is, which is JIRA
> -- so jira.war.  And I'd like it to be in Tomcat's webapp
> directory since that is the expected place to find webapps.

You can't do both.  Either follow standard practice and rename the file to ROOT.war, or keep it outside of the <Host> appBase directory and create a conf/Catalina/[host]/ROOT.xml file containing a <Context> element with a docBase attribute that points to the location of jira.war.  One of the advantages of keeping production webapps outside of the <Host> appBase, is that it makes upgrading from one Tomcat version to another much easier.

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org