2016-05-23 13 views
0

Ich versuche, eine MapServer 5/PostGIS-Installation auf einer virtuellen Centos 6-Maschine auszuführen. I eingesetzt MapServer in meinem cgi-bin-Ordner, aber jetzt, wenn ich (mit Firefox) mapserv Datei Abfrage mit der URL [virtual machine local IP]/cgi-bin/mapserv?MAP=/var/www/cgi-bin/[...], alles, was ich bekommen ist ein Bild mit der folgenden Fehlermeldung darauf:MapServer-Fehler: FATAL: Die Ident-Authentifizierung ist für den Benutzer "..." fehlgeschlagen.

msDrawMap(): Image handling error. Failed to draw layer named '[name of my layer]'.;msPostGISLayerOpen(): Query error. Database connection failed (FATAL: ident authentification failed for user "foo") with connect string 'user=foo dbname=foo password=foo host=localhost port=5432'

I habe versucht, die Einstellung in pg_hba.conf ohne Erfolg zu ändern. Foo-Datenbank kann mit foo als SQL-Benutzer und foo als Passwort mit dem Befehl psql zugegriffen werden. Was kann ich tun?

+0

Sie 'psql' als selben laufen' OS 'Benutzer als' MapServer 'tut? .. –

+0

Ich bin 'psql foo-U foo' als root-Benutzer, ich weiß nicht, ob OS-Benutzer von MapServer noch verwendet wird, wie man es (ich bin irgendwie neu für UNIX). – MattOnyx

+0

von Ihrer Antwort sehe ich os Benutzer ist egal :) Passwort ist nur ASCII? keine Sonderzeichen? –

Antwort

1

accordong zu http://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html Änderung ident-md5 für Benutzer foo in hba.conf

Obtain the operating system user name of the client by contacting the ident server on the client and check if it matches the requested database user name. Ident authentication can only be used on TCP/IP connections. When specified for local connections, peer authentication will be used instead. See Section 19.3.5 for details.

Sie können die überprüfen HbA Sie von psql zu Ihrem db verwenden und läuft show hba_file ;

+0

Ich habe bereits diese Zeile in pg_hba.conf: 'lokale alle alle md5' Aber es hilft nicht. – MattOnyx

+0

von diesem Fehler: 'FATAL: ident Authentifizierung für Benutzer fehlgeschlagen" foo "' Sie treffen nicht Ihre Zeile in hba.conf. ist es das erste in der Reihenfolge? –

+0

Ok ich habe die Antwort gefunden. Das Problem war, dass ich den Zugriff für einen lokalen Zugriff oder einen 127.0.0.1-Host aktivieren wollte. Eigentlich musste ich den IPv6 localhost wie folgt benutzen: 'host foo foo :: 1/128 md5'. Danke für Ihre Hilfe :) – MattOnyx