Ergebnis 1 bis 4 von 4
  1. #1
    Mitglied
    Registriert seit
    Mar 2001
    Beiträge
    365
    Danksagungen
    33

    Angry Verwendung von Apache ProxyPass richtig?

    Hi ho

    ich bin mir gerade nicht sicher ob ich das Prinzip vom Apache Proxy richtig verstanden habe.

    Ich habe folgendes Problem:

    In einer DMZ steht ein Server.ch der lokal folgende Installation hat:
    - Apache
    - Jenkins
    - Sonar
    - zentrale JavaDoc

    Die DMZ hat ein VPN Tunnel zu unseren Freunde etwas weiter abgelegen.
    Auf dem etwas abgelegenen Server.cz finden wir die gleiche Installation.
    Nun möchte ich, da Server.cz nicht aus dem Intranet erreichbar ist Server.ch als Proxy brauchen.

    Sprich ich möchte folgende Links auf die lokale Installation lenken:
    server.ch/jenkins
    server.ch/sonar
    server.ch/javadoc
    und folgende Links über den Tunnel aufrufen:
    cz.server.ch/jenkins
    cz.server.ch/sonar
    cz.server.ch/javadoc

    Soweit der Wunsch - ich habe mich nun mit ProxyPass herumgeschlagen und alles mögliche getestet.
    Ich schaffe es nicht einmal server.ch/jenkins auf -> http://localhost:8080 umzulenken. Sprich ich schaffe es schon, allerdings werden die Links nicht richtig aufgelöst. Text erscheint richtig, aber Bilder, CSS und Script (etc) werden nicht gefunden - mir ist auch klar wieso.

    Ist die Verwendung von ProxyPass überhaupt geeignet oder eher nicht?
    Was habe ich falsch gemacht oder wie würdet ihr vorgehen?

    Vielen Dank für eine angeregte Diskussion.
    Thanks for the fish, sCHween

  2. #2
    deaktivierter Nutzer
    deaktiviertes Benutzerkonto

    Standard Re: Verwendung von Apache ProxyPass richtig?

    Ich hatte das gleiche Problem mit ProxyPass auf einem Kundensystem.

    Lösung:
    ProxyPass muss geändert werden, sodass ein Slash am Ende der URL steht.

    z.B.:
    ProxyPass /jenkins/ http://example.com

    Jetzt hast du nur das Problem, dass du die Domain nur mit einem / am Schluss aufrufen kannst. Hier hilft dir eine RewriteRule in der Apache Konfiguration (die muss vor dem ProxyPass gesetzt werden):

    RewriteRule ^/jenkins$ /jenkins/ [L]

    Lege in deinem DocumentRoot von Apache einen leeren Ordner namens jenkins an, damit die RewriteRule greift.

    Ich hoffe ich konnte helfen

  3. #3
    Mitglied

    (Threadstarter)


    Registriert seit
    Mar 2001
    Beiträge
    365
    Danksagungen
    33

    Standard Re: Verwendung von Apache ProxyPass richtig?

    Hi Skaroth

    vielen Dank für Deine Hilfe.

    Leider funzt das Ding immer noch nicht!
    Darf ich einmal meine vhost config posten?

    http://pastebin.com/2vt85mKA

    Danke für Eure Unterstützung, sCHween

  4. #4
    deaktivierter Nutzer
    deaktiviertes Benutzerkonto

    Standard Re: Verwendung von Apache ProxyPass richtig?

    Was mir schon mal auffällt:
    Die RewriteEngine muss vorher aktiviert werden. Vor der RewriteRule musst du noch Folgendes einfügen:
    Code:
    RewriteEngine on
    Vergewissere dich, dass im DocumentRoot (in deinem Fall: /var/www) alle Ordner angelegt sind (leere Ordner reichen aus!), sonst greift die RewriteRule nicht. Das Apache Modul mod_rewrite muss auch aktiviert sein.

    Generell sieht bei mir die ProxyPass Konfiguration anders aus.
    Ich habe pro Webseite bzw. Domain folgende Konfiguration:

    Code:
    ProxyPass /seite1/ http://seite1.example.com
    ProxyPassReverse /seite1/ http://seite1.example.com
    
    ProxyPass /seite2/ http://seite2.example.com
    ProxyPassReverse /seite2/ http://seite2.example.com
    Einen Location Block pro Seite verwende ich nicht, genausowenig die Attribute ProxyHTMLInterp und ProxyHTMLURLMap.

    Für die Seite jenkins würde ich folgende Konfiguration erstellen:
    Code:
    # rewrite URL
    RewriteEngine on
    RewriteRule ^/jenkins$ /jenkins/ [L]
    
    # secure proxy server from other requests 
    ProxyRequests off
    
    ProxyPass              /jenkins/    http://localhost:8080
    ProxyPassReverse   /jenkins/    http://localhost:8080
    Sollte das immer noch nicht klappen, wirf einen Blick in den Error und Access Log von Apache, damit du weißt, was genau vorgeht.

  5.  
     
     

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •