Zum Hauptinhalt springen

MapServer 7 und kleiner

Konzept

Mapserver als internen WMS-Server einrichten

  • Mapserver als internen WMS definieren und konfigurieren
  • verwendet z.B. ECW- Rasterbilder
  • Rendern des internen WMS mit dem Tileserver

Installation auf dem Kartenserver

Aktuellen Mapserver herunterladen:

http://www.gisinternals.com/release.php

Wenn Sie die aktuelle Version z.Bsp die Compilerversion MSVC 2022 (x64) herunterladen und installieren muss auch das zugehörige Microsoft Visual C++ 2022 (x64) Redistributable installiert werden.

Dann das Verzeichnis C:\Apps\mapserver (Pfad+Name beliebig) anlegen und hier entpacken:

Im wwwroot Verzeichnis ein neues Verzeichnis anlegen - "cgi-bin":

Im IIS (Internet Information Server) auf das Verzeichnis cgi-bin klicken und unter Serverkomponenten ein Doppelklick auf Handlerzuordnung:

Featureberechtigungen für cgi-bin bearbeiten

und Berechtigungen auf Lesen und Skript sowie auf Ausführen setzen:

Und bei den Handlerzuordnungen eine Modulzuordnung hinzufügen:

und bearbeiten

Einschränkungen festlegen:

und mit ok bestätigen und die folgende Abfrage mit ja beantworten.

Im IIS den Server markieren und nach Kategorie gruppieren und über Doppelklick die FastCGI-Einstellungen öffnen:

Und die Einstellungen für die mapserv.exe bearbeiten:

Die Umgebungsvariablen öffnen und den Namen PATH und den Value C:\Apps\mapserver\bin hinzufügen:

Mit OK die neue Umgebungsvariable anlegen und die "MaxRequest-Instanz" für die Testphase von 200 auf 1 setzen:

Übersicht über die FastCGI Einstellungen

Globale Konfigurationsdatei

Bitte beachten

Ab MapServer 8.0 verfügt MapServer über eine erforderliche globale Konfigurationsdatei, die durch RFC 135 implementiert wird und darauf abzielt, die Konfiguration von MapServer sowohl sicherer als auch unkomplizierter zu machen. Der Pfad der Konfigurationsdatei kann über die Umgebungsvariable MAPSERVER_CONFIG_FILE festgelegt werden.

Konfiguration siehe:

https://mapserver.org/mapfile/config.html#config

Jetzt kann der erste Aufruf im Internet Browser erfolgen:

http://localhost/cgi-bin/mapserv.exe

Windows Server

Die mapserv.exe aus dem Verzeichnis C:\Apps\mapserver\bin\ms\apps\mapserv.exe zusätzlich in das Verzeichnis: C:\inetpub\wwwroot\cgi-bin\mapserv.exe kopieren – sonst wird diese nicht angesprochen!

ECW Dateien

Das ECW Plugin wird aus dem Verzeichnis C:\Apps\mapserver\bin\gdal\plugins-optional\gdal_ECW_JP2ECW.dll in das Verzeichnis C:\Apps\mapserver\bin\gdal\plugins kopiert. Falls nicht schon vorhanden bei neueren Versionen.

Umgebungsvariablen

In einigen Fällen werden Umgebungsvariablen vom Mapserver unter Windows nicht "gesehen". In diesem Fall müssen folgende Umgebungsvariablen im Mapfiles definiert werden: MAP

* CONFIG "GDAL_DRIVER_PATH" "C:/Mapserver/bin/gdal/plugins"
* CONFIG "GDAL_DATA" "C:/Mapserver/bin/gdal-data"
* CONFIG "ORACLE_HOME""C:\oracle\product\11.2.0\client_1"

Einen exemplarischen mapfile der mit gisinternals funktioniert können Sie hier einsehen: Download mapfile

Konfiguration in MapEdit (optional)

Folgendes Verzeichnis auf dem Kartenserver anlegen:

C:\inetpub\wwwroot\MumGeoData\MapServer

Anmerkung

Hier werden die mapfiles, logs, Symbole und Schriften optimaler Weise abgelegt.

IIS

MapServer-Verbindung in MapEdit einrichten

Wie konfiguriert man den MapServer in MapEdit AppBuilder, wenn dieser nicht auf dem Server mit MapEdit liegt?

MapEdit-Server auf gis1 und MapServer auf gis2:

Server-URL: http://gis2/cgi-bin/mapserv.exe

MapFileFolder: \\gis2\wms\