2016-05-04 8 views
0

Ich möchte mehrere Anwendungen auf verschiedenen Ports in einer Instanz von Tomcat hosten. Ich habe den folgenden Link durchsucht und die folgenden Änderungen in meiner Datei /etc/tomcat/server.xml vorgenommen und die folgenden Zeilen hinzugefügt.Mehrere Anwendung auf mehreren Port funktioniert nicht - Tomcat

How to run different apps on single Tomcat instance behind different ports?

Server.xml

<Service name="app1"> 
    <Connector port="8082" protocol="HTTP/1.1" 
      connectionTimeout="20000" 
      URIEncoding="UTF-8" 
      redirectPort="8443" /> 
    <Engine name="Catalina1" defaultHost="localhost"> 
     <Host name="localhost" appBase="app1" 
     unpackWARs="true" autoDeploy="true"> 
     </Host> 
    </Engine> 
</Service> 

<Service name="app2"> 
    <Connector port="8083" protocol="HTTP/1.1" 
      connectionTimeout="20000" 
      URIEncoding="UTF-8" 
      redirectPort="8443" /> 
    <Engine name="Catalina2" defaultHost="localhost"> 
     <Host name="localhost" appBase="app2" 
     unpackWARs="true" autoDeploy="true"> 
     </Host> 
    </Engine> 
</Service> 

Im appBase Ich habe sowohl die Art und Weise zur Verfügung gestellt. 1. direkter Ordnername. 2. Pfad: webapps/temp.

Das Problem ist, wenn ich den Port 8082 und 8083 treffe, bekomme ich nicht die Standardseite Es funktioniert für Tomcat. und ich kann nicht zu meiner URL anrufen.

Beispiel: ip: 8082/temp/xyz/abc/param1 = hallo & param2 = Welt
ip: 8083/temp/xyz/abc/param1 = hallo & param2 = Welt

Wenn ich sehe, im Netzwerk bekomme ich 404 Fehler für meine URL.

Aber wenn die gleiche URL über Port 8081 (Standardkonfiguration in server.xml) aufrufen funktioniert es einwandfrei ich bekomme die Antwort richtig.

Was ich hier falsch mache.

Auch wenn möglich, bitte sagen Sie mir die Nachteile und Probleme, wenn ich auf diese Weise fortfahren, mehrere Anwendungen auf einzelnen Tomcat-Instanz hosten.

Dank

+0

hast du es funktioniert? Ich habe das gleiche Problem – habitats

Antwort

0

Es gibt mehrere Probleme mit der aktuellen Konfiguration. Ich empfehle Ihnen, die andere Frage sorgfältig zu lesen. Im Einzelnen:

  • Service-Namen müssen
  • appBase Werte eindeutig sein muss
  • appBase Werte eindeutig sein dürfen nicht überlappen

persönlich

  • Motor Namen eindeutig sein muss, würde ich nicht mach es so. Ich würde alles unter einem einzigen Service/Engine laufen lassen und virtual hosting verwenden. Sie müssen für jeden Dienst einen DNS-Namen einrichten, aber bei virtuellem Hosting vermeiden Sie, dass Benutzer die Portnummer in die URL aufnehmen müssen, die sie für den Zugriff auf den Dienst verwenden.

  • +0

    Sir Ich habe meine Frage bearbeitet und Änderungen nach den Punkten gemacht, die Sie vorgeschlagen haben.Aber ich bin immer noch nicht in der Lage, die Antwort zu bekommen. Und vielen Dank für das Teilen von virtuellem Hosting. Das ist das erste Mal, dass ich so etwas mache. –

    Verwandte Themen