apache2: VirtualHost-Konfiguration für Anwendung und Repository

apache2: VirtualHost-Konfiguration für Anwendung und Repository

Ich verwende Apache2 2.2 auf CentOs 2.6.

Ich muss meinen Apache2 so konfigurieren, dass ich meine Wildfly-Anwendung und mein Quellcode-Repository verwenden kann. Für meine Anwendung verwende ich die Adresse: domain.com und werde zu meiner App weitergeleitet: localhost:8080/app1 . Über den Link domain.com/repos/app1 möchte ich mein Quellcode-Repository (localhost/repos/app1) verwenden können. Beide Links verwenden Port 80.

Mit der folgenden Konfiguration kann ich meine Anwendung verwenden, aber nicht auf mein Repository zugreifen, da die Anforderung daran an meine Wildfly-App1 umgeleitet wird und dort natürlich die Seite „Diese Seite existiert nicht“ angezeigt wird.

<VirtualHost *:80>
   ServerName domain.com
   ServerAlias www.domain.com domain.com

   ProxyRequests Off
   ProxyPreserveHost On

   ProxyPass / http://localhost:8080/app1/
   ProxyPassReverse /  http://localhost:8080/app1/

   RewriteEngine   On
   RewriteCond     %{THE_REQUEST}  /app1/
   RewriteRule     ^/app1/(.*)$ /$1 [PT]

</VirtualHost>

Wie kann dieses Problem behoben werden?

Antwort1

Wenn ich Sie richtig verstehe, möchten Sie sowohl auf einen lokalen Ordner als auch auf eine App zugreifen, die auf einem App-Server von 2 URLs aus läuft. Wenn Sie ProxyPass / verwenden, wird beim Versuch, auf domain.com/repos zuzugreifen, eine Weiterleitung zu Ihrer Wildfly-App durchgeführt. domain.com/repos -> (wildfly)http://localhost:8080/app1/repos

Sie sollten domain.com/app1 verwenden, um Ihre App zu erreichen, und dann domain.com/repos, um Ihr Repo zu erreichen. Dann brauchen Sie die URL nicht

ProxyPass /app1 http://localhost:8080/app1/
ProxyPassReverse /app1  http://localhost:8080/app1/

verwandte Informationen