Publicerad den Lämna en kommentar

Egen server för geodatatjänster – Del 3

I detta inlägg så börjar vi med ett klientprogram, nämligen QGIS. QGIS används för att testa anslutningar och för att redigera data i tabeller i databasen. Med rätt insticksprogram så går det enkelt att skapa nya tabeller i PostGIS också. Dessutom så är QGIS klienten en viktig komponent för att skapa OGC-tjänster via QGIS Server, som kommer i slutet på inägget.

QGIS

Jag går inte så djupt in på QGIS i denna guide, men jag rekommenderar att OpenGeo Explorer installeras som insticksprogram.

bok8

För att det skall gå att installera så måste en ny källa läggas till i inställningarna.

http://qgis.boundlessgeo.com/plugins.xml

I tillägget går det att direkt ansluta till PostGIS databasen och skapa nya tabeller för alla typer av vektordata. Detta är ett bättre sätt än att importera shapefiler, även om det också fungerar bra. Fördelen är att det går att skapa tydligare fältnamn och det går att ha fler fälttyper i tabellerna.

För att publicera data till GeoServer, så går det också att göra via insticksprogrammet, men det blir inte riktigt bra om man vill få med symboliken från QGIS.

Då är det bättre att sätta upp en OGC server till på servern. Nämligen QGIS-Server.

QGIS Server

QGIS Server bygger på funktionaliteten i QGIS och gör det möjligt att publicera OGC-tjänster som WMS med samma utseende som i QGIS. Man slipper då att strula med SLD-filer och konfigurering i GeoServer.

Det går att installera QGIS Server på en klient där QGIS finns, men det går även att installera nödvändiga program på en server utan klientprogrammet.

gpg --keyserver keyserver.ubuntu.com --recv 47765B75 gpg --export --armor 47765B75 | apt-key add - echo ”deb http://qgis.org/debian precise main” > /etc/apt/sources.list.d/qgis.list echo ”deb-src http://qgis.org/debian precise main” >> /etc/apt/sources.list.d/qgis.list apt-get install grass python-software-properties add-apt-repository ppa:ubuntugis/ubuntugis-unstable apt-get update apt-get install apache2 qgis-mapserver libapache2-mod-fcgid service apache2 restart

Kommandona ovan installerar även Grass, som ger lite extra funktionalitet. För att testa installationen så kan man skriva in nedanstående adress i en webbläsare på nätverket:

http://192.168.1.42/cgi-bin/qgis_mapserv.fcgi?VERSION=1.3.0&REQUEST=GetCapabilities

Byt ut IP adressen mot serverns.

För att enklare utnyttja QGIS Server så behövs ett smidigt sätt att publicera tjänster. Det enklaste jag kommit på är via en delad katalog på servern.

För detta krävs Samba och ytterligare lite inställninar.

apt-get install samba samba-common python-glade2 system-config-samba mkdir /qgis chmod 777 /qgis/ mkdir /geodata chmod 777 /geodata/

Katalogerna ovan skapas med alla rättigheter för att göra plats för QGIS-projektfiler och för data som inte skall lagras i PostGIS.

För att få igång utdelningen så måste filen /etc/samba/smb.conf redigeras.

#============= Globala Inställningar ===========  [global]  workgroup = WORKGROUP  server string = Samba Server %v  netbios name = geoserver  security = user  unix password sync = yes  map to guest = bad user  dns proxy = no  #============ Delade Kataloger ===========  [qgis]  path = /qgis  browsable = yes  writable = yes  guest ok = yes  read only = no  [geodata]  path = /geodata  browsable = yes  writable = yes  guest ok = yes  read only = no

Starta om Samba servern för att läsa in de nya inställningarna.

service smbd restart

Nu går det att ladda upp filer till servern, som kan användas direkt i GeoServer, eller via GeoServer till QGIS, och sedan till GeoServer igen… mer om det i kommande inlägg.

I QGIS katalogen kan man ladda upp qgs-filer och anropa dessa via QGIS Server. Adressen till QGIS Servers OGC tjänster är:

http://192.168.1.42/cgi-bin/qgis_mapserv.fcgi?VERSION=1.3.0&map=/qgis/filnamn.qgs

Byt ut IP adressen ovan till den aktuella och redigera filnamnet till önskad projektfil. Så länge sökvägarna till data är tillgängliga även från servern så kommer allt att fungera perfekt.

Prova att skapa lite nya PostGIS data och lägg till dessa i ett QGIS projekt, som sparas i den utdelade qgis-katalogen på servern.

För att testa WMS tjänsten så lägg till en WMS server i ett nytt QGIS-projekt där URL till tjänsten är den adress som står angiven ovan. Efter anslutning så kommer dels hela projektet att finnas som tjänst, men även varje individuellt lager. Lägg till och prova.

Nyhet från Geosupportsystem , orginal inlägg

Lämna ett svar