[Mapbender-users] Mapbender3 hinter Reverse Proxy

krueger roland roland.krueger at o-p-r.de
Mon Aug 19 05:24:18 PDT 2013


Hallo Herr Wygoda,

 
vielen Dank, Ihre Antwort hat mir weitergeholfen. Allerdings habe ich weiterhin Probleme für eine zufriedenstellende Funktionälität.

 
Erst habe ich eine Weile rumprobiert und nicht nachvollziehen können bei welchen Anpassungen in 'app/config/config.yml' es Veränderungen gibt. Irgendwann bin ich auf die Idee gekommen den Symfony2-Cache zu löschen.
Eigenartigerweise löscht 'app/console cache:clear' den Cache nicht vollständig.
Also habe ich den Cache manuell gelöscht. Ich habe einfach alle Dateien und Verzeichnisse unter 'app/cache/' manuelle gelöscht. Nun konnte ich Veränderungen an der 'app/config/config.yml' nachvollziehen.

Ich habe in 'app/config/config.yml' folgende Ergänzung eingefügt.

framework:
    # trust_proxy_headers: true                 # --> Variante_1
    trusted_proxies:       [ReverseProxyIP]     # --> Variante_2
    # trusted_proxies:     [BeliebigeFalscheIP] # --> Variante_3

Alles Folgende, das ich nun schreibe gilt für alle drei Varianten. Egal ob ich in 'app/config/config.yml' Variante_1, Variante_2 oder Variante_3 eintrage, das Verhalten ist immer gleich. Eigenartiger Weise ist das Verhalten bei einer FalschenIP für den Reverse Proxy ebenfalls gleich. Dafür habe ich keine Erklärung.

Bei:
http://www.o-p-r.info/geo1/mb3/app.php
hat sich nichts verändert. Egal ob man Variante_1, Variante_2, Variante_3 oder nichts einträgt, immer ist die Webseite auf den ersten Blick kaputt. Obwohl die ReverseProxyWeiterleitung genauso eingerichtet ist wie bei http://www.o-p-r.info/mb3/app.php
Hier sieht man auf den ersten Blick, dass die Webseite kaputt ist. Die eingebauten Links sind kaputt.

Bei:
http://www.o-p-r.info/mb3/app.php
scheinen die Links nun o.k. zu sein. Allerdings besteht immernoch das Problem beim Login und 2-tes Login. Hier steht in der URL nun Port 81.
Der Reverseproxy leitet auf geo1.kv.o-p-r.de:81 weiter, da eine Firewall dazwischen ist, dürfte aber eigentlich kein Problem sein. Der Klick auf den Login-Button scheint ein POST-Aufruf zu sein, hier wird auf 'http://www.o-p-r.info:81/mb3/app.php/user/login' verwiesen, was natürlich nicht funktionieren kann. Alle anderen GET-Links scheinen o.k. zu sein, hier ist ":81" nicht in den Links enthalten. Beim POST scheint Symfony2 ':81' anzuhängen, was nicht korrekt ist. Warum?

Hat jemand eine Idee, wie ich das Problem mit
-1.- 'http://www.o-p-r.info/geo1/mb3/app.php' und
-2.- 'http://www.o-p-r.info/mb3/app.php' Port 81 bei POST
einkreisen und lösen kann.

Vielen Dank und beste Grüße

 
Roland Krüger
Sachgebietsleiter IT-Service/IT-GIS

 
 
-----Ursprüngliche Nachricht-----
Von:Christian Wygoda <Christian.Wygoda at wheregroup.com>
Gesendet:Do 15.08.2013 11:01
Betreff:Re: [Mapbender-users] Mapbender3 hinter Reverse Proxy
An:Mapbender User List <mapbender_users at lists.osgeo.org>; 
Hallo Herr Krüger,

Hier muss die Konfiguration Mapbender3 entsprechend angepasst werden. Das zugrunde liegende Framework (Symfony2) traut aus Sicherheitsgründen per Default keinen Proxy-Headern.

Details dazu allgemein für Symfony2 können Sie unter [0] nachlesen. Entscheidend ist die Einstellung framework -> trustedproxies (bzw. veraltet framework -> trust_proxy_headers, welche noch geht, aber mit einem der nächsten Updates durch ein Symfony2-Update weg fallen wird), wie sie unter [1] dokumentiert ist.

Den Parameter müssen Sie neu in der app/config/config.yml eintragen, er ist standardmäßig dort nicht vorhanden. Sie müssen darauf achten, keine Tab-Zeichen einzufügen, die sind leider im YAML-Format verboten, aber die meisten Editoren fügen sie selbst in als YAML erkannte Dokumente ein. Das nur als Hinweis... :)


Mit besten Grüßen,
 Chr. Wygoda

[0] http://symfony.com/doc/2.1/components/http_foundation/trusting_proxies.html
[1] http://symfony.com/doc/2.1/reference/configuration/framework.html#trusted-proxies
 
----------------ursprüngliche Nachricht-----------------
Von: "krueger roland" roland.krueger at o-p-r.de 
An: "mapbender_users at lists.osgeo.org " mapbender_users at lists.osgeo.org 
Datum: Wed, 14 Aug 2013 18:10:57 +0200
-------------------------------------------------
 
 
> Hallo Mapbender-User,
> 
> 
> Ich habe Mapbender3 gemäß der Dokumentation installiert. Intern ist der Server 
> und Mapbender3 problemlos über 
> http://geo1.myinternserver.de/mb3/app.php erreichbar. Alles 
> funktioniert problemlos.
> http://geo1.myinternserver.de soll direkt nur intern im Intranet und nicht 
> direkt aus dem Internet erreichbar sein.
> 
> Hier ein Ausschnitt aus apache2.conf
> <VirtualHost *:80>
> ServerName geo1.myinternserver.de
> Alias /mb3 /var/mb3/web/
> <Directory /var/mb3/web/>
> Options MultiViews
> DirectoryIndex app.php
> Order allow,deny
> Allow from all
> </Directory>
> </VirtualHost>
> 
> Aus dem Internet soll die Mapbender3-Installation jedoch über einen Reverse 
> Proxy erreichbar sein.
> Doch leider funktioniert die Mapbender3-Webseite nicht vernünftig durch den 
> Reverse Proxy.
> 
> Hier sind zwei URLs, die aus dem Internet erreichbar sind. Der Reverse Proxy 
> schickt beide an die
> Mapbender3-Installation unter 
> http://geo1.myinternserver.de/mb3/app.php weiter.
> 
> http://www.o-p-r.info/geo1/mb3/app.php
> Hier sind man auf den ersten Blick, dass die Webseite kaputt ist. Die eingebauten 
> Links sind z.B. kaputt.
> 
> http://www.o-p-r.info/mb3/app.php
> Hier schein alles auf den ersten Blick o.k. zu sein. Wenn man jedoch auf "Login" 
> klick und anschließend nach
> Eingabe User/Password nochmal auf Login klickt merkt man, dass auch hier die 
> Links kaputt sind.
> Man kann übrigens ohne die Eingabe von Username/Password gleich das zweite Mal 
> auf Login klicken. Es kommt der Fehler:
> The requested URL /geo1mb3/app.php/user/login was not found on this server.
> Die URL /geo1mb3/app.php/user/login ist natürlich falsch. Es müsste auf
> http://www.o-p-r.info/mb3/app.php/user/login gehen.
> 
> Ich vermute, dass der Reverse Proxy einige URLs nicht korrekt umschreibt. Liegt 
> das evtl. am Symfony2 Framework?
> Ich habe keine Erfahrung mit Symfony2.
> Gibt es eine Dokumentation was beim Betrieb von Mapbender3 hinter einem Reverse 
> Proxy beachtet werden muss.
> 
> Mit Mapbender2.x hatte es hinter dem Reverse Proxy immer problemlos 
> funktioniert.
> 
> Mit freundlichen Grüßen
> 
> Roland Krüger
> Sachgebietsleiter IT-Service/IT-GIS
> 
> ======================================
> Landkreis Ostprignitz-Ruppin
> Kataster- und Vermessungsamt
> 
> Sachgebiet IT-Service/IT-GIS
> 
> Heinrich-Rau-Straße 27-30
> 
> 16816 Neuruppin
> Telefon: +49 3391 688-6238
> Email: roland.krueger at o-p-r.de 
> ======================================
> 
> 
> 

__________________________________________________
> _______________________________________________
> Mapbender_users mailing list
> Mapbender_users at lists.osgeo.org 
> http://lists.osgeo.org/mailman/listinfo/mapbender_users
> 


_______________________________________________
Mapbender_users mailing list
Mapbender_users at lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/mapbender_users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapbender_users/attachments/20130819/03780bc2/attachment.html>


More information about the Mapbender_users mailing list