[FOSSGIS-Talk] QGIS-Server und PostGIS

Jakob Miksch info at jakobmiksch.eu
Sa Jun 17 10:28:09 CEST 2023


Hallo Walter,

man kann auch mit PG_SERVICE files arbeiten siehe 
https://www.postgresql.org/docs/current/libpq-pgservice.html . Im QGIS 
Projekt müssen alle PostGIS layer über eine Verbindung eingebunden die 
über PG_SERVICE files laufen. Siehe 
https://wheregroup.com/blog/details/einfache-verbindung-von-postgresql-postgis-datenbanken-mit-qgis-mittels-mit-pg-serviceconf/ 
.  Das selbe PG_SERVICE file dass du auf dem Desktop hast, muss auch auf 
dem Server verfügbar sein. Dann geht das auch.

Dieses Docker image (https://github.com/camptocamp/docker-qgis-server) 
bietet die Möglichkeit so ein PG_SERVICE File zu mounten.

Viele Grüße und viel Erfolg,
Jakob

Am 17.06.23 um 09:01 schrieb Nora König:
> Hallo Walter,
>
> in QGIS unter > Optionen > System > Umgebung muss der Pfad zu einer 
> Umgebungsvariable angegeben werden. Dort sind drei Angaben zu machen:
>
> Anwenden (Auswahlfeld): Überschreiben
>
> Variable (Freifeld): frei zu wählender Name, soweit ich weiß
>
> Wert (Freifeld): Pfad einer .conf-Datei angeben. C:\...\abc.conf
>
>
> In der .conf-Datei müssen dann verschiedene Parameter definiert werden:
>
> [name]
>
> host=
>
> port=
>
> dbname=
>
> user=
>
> passwort=
>
> sslmode=
>
> Hilft dir das?
>
> Ich habe bei der Arbeit einen QGIS Server am Laufen.
>
> Viele Grüße
> Nora
>
>
> Am 17.06.2023 um 08:32 schrieb wambacher at posteo.de:
>
>> Hi,
>>
>> nachdem mein QGIS-Server einigermaßen rund läuft (auch mit Logging 😉 
>> ), möchte/muss ich auf meine PostGIS-Datenbank zugreifen.
>>
>> Mit der QGIS GUI seit Jahren überhaupt kein Problem, aber wie sage 
>> ich es dem QGIS-Server?
>>
>> Außer einem dezenten Hinweis auf einige Envionment-Variablen konnte 
>> ich keinerlei Beschreibung dafür finden.
>>
>> Klar, im Projektfile steht der Provider drin:
>>
>> <layer-tree-layer providerKey="postgres" source="dbname='planet3' 
>> host=server1 port=5432 user='postgres' key='tid' srid=4326 type=Point 
>> checkPrimaryKeyUnicity='1' 
>> table="public"."wrong_postcodes" (geom) sql=" 
>> name="wrong_postcodes" expanded="1" checked="Qt::Checked" 
>> id="wrong_postcodes_c12a8440_dbd1_47f3_9c63_872fa41b0ab3">
>>       <customproperties/>
>>     </layer-tree-layer>
>>
>> aber geholfen hat mir das bisher auch nicht.
>>
>> Mein WFS-Request lautet
>>
>> http://qgis.wambachers-osm.website/cgi-bin/qgis_mapserv.fcgi?version=1.1.0&map=/home/qgis/projects/wrong_postcodes.qgs 
>>
>> &SERVICE=WFS&REQUEST=GetFeature&TypeName=wrong_postcodes&CRS=EPSG:4326&outputFormat=text/xml&BBOX=45,5.5,55.5,17 
>>
>>
>> hier wird aber day Layer "wrong_postcodes" nicht gefunden.
>>
>> Jeder Tipp oder ein Link zu einer Beschreibung würde sehr helfen.
>>
>> Gruß
>>
>> walter aka wambacher at osm
>>
> Am 17.06.2023 um 08:48 schrieb Christoph Jung:
>> Hallo Walter,
>>
>> Hier der Link zur QGIS Server Doku mit dem Abschnitt, der dir helfen 
>> sollte:
>> https://docs.qgis.org/3.28/en/docs/user_manual/auth_system/auth_workflows.html#qgis-server-support 
>>
>>
>> Kurz zusammengefasst:
>> Möchtest du einen DB-Layer als Dienst veröffentlichen, läuft das 
>> zwingend über die AuthDB des Servers. Es muss eine Environment 
>> Variable gesetzt werden mit dem Pfad zur AuthDB, solltest du nicht 
>> die Standard-AuthDB nutzen. Zusätzlich benötigt der Server das 
>> Master-PW für die AuthDB. Dieses muss in eine Textdatei geschrieben 
>> werden und der Pfad zur Datei als Environment Variable dem Server 
>> bekannt gemacht werden (Siebe Link weiter oben). Einmal eingerichtet 
>> funktioniert es wunderbar :)
>>
>> Grüße,
>> Christoph
>>
>>> Am 17.06.2023 um 08:32 schriebwambacher at posteo.de:
>>>
>>> Hi,
>>>
>>> nachdem mein QGIS-Server einigermaßen rund läuft (auch mit Logging 
>>> ;) ), möchte/muss ich auf meine PostGIS-Datenbank zugreifen.
>>>
>>> Mit der QGIS GUI seit Jahren überhaupt kein Problem, aber wie sage 
>>> ich es dem QGIS-Server?
>>>
>>> Außer einem dezenten Hinweis auf einige Envionment-Variablen konnte 
>>> ich keinerlei Beschreibung dafür finden.
>>>
>>> Klar, im Projektfile steht der Provider drin:
>>>
>>> <layer-tree-layer providerKey="postgres" source="dbname='planet3' 
>>> host=server1 port=5432 user='postgres' key='tid' srid=4326 
>>> type=Point checkPrimaryKeyUnicity='1' 
>>> table="public"."wrong_postcodes" (geom) sql=" 
>>> name="wrong_postcodes" expanded="1" checked="Qt::Checked" 
>>> id="wrong_postcodes_c12a8440_dbd1_47f3_9c63_872fa41b0ab3">
>>>        <customproperties/>
>>>      </layer-tree-layer>
>>>
>>> aber geholfen hat mir das bisher auch nicht.
>>>
>>> Mein WFS-Request lautet
>>>
>>> http://qgis.wambachers-osm.website/cgi-bin/qgis_mapserv.fcgi?version=1.1.0&map=/home/qgis/projects/wrong_postcodes.qgs 
>>>
>>> &SERVICE=WFS&REQUEST=GetFeature&TypeName=wrong_postcodes&CRS=EPSG:4326&outputFormat=text/xml&BBOX=45,5.5,55.5,17 
>>>
>>>
>>> hier wird aber day Layer "wrong_postcodes" nicht gefunden.
>>>
>>> Jeder Tipp oder ein Link zu einer Beschreibung würde sehr helfen.
>>>
>>> Gruß
>>>
>>> walter aka wambacher at osm
>>>
>>> -- 
>>> My projects:
>>>
>>> OSM Software 
>>> Watchlist<https://wambachers-osm.website/SoftwareWatchlist.html>
>>> OSM Emergency Map<https://wambachers-osm.website/Emergency.html>  (*)
>>> OSM Healthcare Map<https://wambachers-osm.website/Healthcare.html>  (*)
>>> OSM Postcode Map<https://wambachers-osm.website/Postcodes.html> 
>>> (Germany)
>>>
>>> *) DACH+: Germany, Austria, Switzerland, Liechtenstein
>>>
>>> -- 
>>> My projects:
>>>
>>> OSM Software 
>>> Watchlist<https://wambachers-osm.website/SoftwareWatchlist.html>
>>> OSM Emergency Map<https://wambachers-osm.website/Emergency.html>  (*)
>>> OSM Healthcare Map<https://wambachers-osm.website/Healthcare.html>  (*)
>>> OSM Postcode Map<https://wambachers-osm.website/Postcodes.html> 
>>> (Germany)
>>>
>>> *) DACH+: Germany, Austria, Switzerland, Liechtenstein
>>> -- 
>>> ....................................................................
>>> FOSSGIS Vereinstermine:
>>> https://fossgis.de/aktivit%C3%A4ten/termine/
>>>
>>> FOSSGIS e.V, der Verein zur Förderung von Freier Software aus dem
>>> GIS-Bereich und Freier Geodaten!
>>> https://www.fossgis.de/ https://mastodon.online/@FOSSGISeV
>>> https://twitter.com/FOSSGIS_Verein
>>> ____________________________________________________________________
>>> FOSSGIS-Talk-Liste mailing list
>>> FOSSGIS-Talk-Liste at fossgis.de
>>> https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste



Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste