Distribuere applikasjon på Tomcat Root

1. Oversikt

I denne raske artikkelen vil vi diskutere distribusjon av en webapplikasjon ved roten til en Tomcat.

2. Tomcat Deployment Basics and Terminology

Først finner du det grunnleggende om å distribuere et program til Tomcat i denne veiledningen: Hvordan distribuere en WAR-fil til Tomcat.

Enkelt sagt, webapplikasjoner plasseres under $ CATALINA_HOME \ webapps, hvor $ CATALINA_HOME er Tomcats installasjonskatalog.

Kontekstbanen refererer til plasseringen i forhold til serverens adresse som representerer navnet på webapplikasjonen.

Som standard henter Tomcat det fra navnet på den distribuerte krigsfilen. Så hvis vi distribuerer en fil EksempelApp.war, vil den være tilgjengelig på // localhost: 8080 / EksempelApp. Dvs. kontekstveien er / EksempelApp.

Hvis vi nå trenger å ha den appen tilgjengelig på // lokal vert: 8080 / i stedet har vi noen alternativer, som vi vil diskutere i de følgende avsnittene.

For en mer detaljert forklaring av kontekstkonseptet til Tomcat, ta en titt på den offisielle Tomcat-dokumentasjonen.

3. Distribuere appen som ROOT. Krig

Det første alternativet er veldig greit: vi må bare slette standardverdien /ROT/ mappen i $ CATALINA_HOME \ webapps, gi nytt navn til vårt EksempelApp.war til ROOT. Krig, og distribuer den.

Appen vår vil nå være tilgjengelig på // lokal vert: 8080 /.

4. Spesifisere kontekstbanen i server.xml

Det andre alternativet er å angi kontekstbanen til applikasjonen i server.xml (som ligger på $ CATALINA_HOME \ conf).

Vi må sette inn følgende inne i tag for det:

Merk: å definere kontekstbanen manuelt har den bieffekten at applikasjonen distribueres to ganger som standard: kl // localhost: 8080 / ExampleApp / så vel som kl // lokal vert: 8080 /.

For å forhindre dette, må vi stille autoDeploy = ”false” og deployOnStartup = ”false” i stikkord:

Viktig: dette alternativet anbefales ikke lenger, siden Tomcat 5: det gjør kontekstkonfigurasjoner mer invasive, siden server.xml filen kan ikke lastes på nytt uten å starte Tomcat på nytt.

5. Spesifisere kontekstbanen i en appspesifikk XML-fil

For å unngå dette problemet med server.xml, har vi det tredje alternativet: vi setter kontekstbanen i en applikasjonsspesifikk XML-fil.

Derfor må vi lage en ROOT.xml$ CATALINA_HOME \ conf \ Catalina \ localhost med følgende innhold:

To poeng er ingenting verdt her.

Først trenger vi ikke å spesifisere banen eksplisitt som i forrige alternativ - Tomcat stammer det fra navnet på vårt ROOT.xml.

Og for det andre - siden vi definerer konteksten vår i en annen fil enn server.xml, våre docBase må være utenfor $ CATALINA_HOME \ webApps.

6. Konklusjon

I denne veiledningen diskuterte vi forskjellige alternativer for hvordan du distribuerer en webapplikasjon ved roten til en Tomcat.


$config[zx-auto] not found$config[zx-overlay] not found