Zuordnung von Ports zu Ressourcen

482
splinter123

Ich habe einen virtuellen Linux-Server, der auf DigitalOcean gehostet wird, auf dem ich Glassfish mit einigen Web-Services unter my_ip: 5757 / services / ausführen kann. Die Admin-Konsole befindet sich unter my_ip: 4848 /. Ich führe auch einen Datenbank-Client (H2) aus, auf den von my_ip: 8585 aus zugegriffen werden kann. Ich möchte auf alle diese Dienste remote zugreifen, ohne jemals eine Portnummer einzugeben, beispielsweise in der Form my_ip / services, my_ip / console und my_ip / database. Gibt es eine einfache Möglichkeit, dies zu tun? Bei den Web-Diensten könnte ich wohl eine Regel in iptables setzen, um den Port 5757 auf 8080 umzuleiten. Für die anderen Dienste ist es mir jedoch nicht klar. Ich dachte darüber nach, einen neuen Webservice in Glassfish (mit JAXB) hinzuzufügen, der database / und irgendwie localhost: 8585, aber ich weiß nicht wie. Gibt es eine einfache Möglichkeit, dies zu tun?

0

1 Antwort auf die Frage

0
Romeo Ninov

Installieren Sie Apache auf diesem Host und erstellen Sie einen Reverse Proxy für verschiedene Dienste

ProxyPass /db http://localhost:8585 ProxyPassReverse /db http://localhost:8585 

und so weiter. Überprüfen Sie hier für weitere Informationen

Vielen Dank, ich werde die Lösung überprüfen, aber ich habe mich gefragt, ob ich in Glassfish dasselbe erreichen könnte, ohne dafür einen anderen Server zu installieren. splinter123 vor 9 Jahren 0
Glassfish ist ein Java-Anwendungsserver, und ich glaube nicht, dass der Mini-HTTP-Server eine solche Funktionalität hat. Wenn Sie jedoch gut programmieren können, können Sie in Java einen eigenen Reverse Proxy erstellen. Trotzdem ist dies aus meiner Sicht ein Fehler im Vergleich zur Installation und Konfiguration von Apache-Servern Romeo Ninov vor 9 Jahren 0
Wenn Sie dies nur mit GlassFish tun möchten, müssen Sie Port 8080 in nur 80 und Port 4848 in 443 ändern. Dies sind die Standard-Portnummern, über die Ihr Browser eine Verbindung herstellen möchte. Daher muss GlassFish diese Verbindungen abhören damit dies funktioniert. ** Dies ist jedoch eine schlechte Idee! ** Dies bedeutet, dass GF den gesamten Webdatenverkehr zu diesem Host überträgt, und GF ist nicht darauf ausgelegt, dies sowie Apache zu verwalten. Es ist also möglich, aber die akzeptierte Antwort ist der beste Weg. Mike vor 9 Jahren 1