Erstellen eines Kachelcaches mit Apache

Das Caching von Kartenkacheln kann mithilfe des integrierten Caching-Mechanismus des Apache HTTP Server ausgeführt werden. So richten Sie einen Kachelcache für zuvor gerenderte oder direkt erstellte Kacheln ein:

  1. Laden Sie eine Instanz des Apache HTTP Server herunter, und installieren Sie ihn als Front-End für Ihre Spectrum™ Technology Platform-Installation.
    Anmerkung: Der Apache-Webserver muss auf einem Computer installiert sein, der Netzwerkzugriff auf den Computer hat, der Spectrum™ Technology Platform hostet.

    Der Apache Front-End-Server fungiert als eine Art Filter, der „NamedTile“-Anforderungen abfängt, damit die angeforderten Kartenkacheln auf der Festplatte zwischengespeichert werden können.

  2. Ändern Sie die Konfigurationsdatei des Apache-Servers:apache_install_dir/conf/httpd.conf.
    1. Öffnen Sie httpd.conf in einem Texteditor.
    2. Suchen Sie in httpd.conf die folgende Zeile:

      Listen 80

      Fügen Sie direkt darunter folgende Zeile hinzu:

      Listen 90

    3. Fügen Sie am Ende der Datei folgende Zeile hinzu:

      Include conf/tilecaching.conf

    4. Speichern Sie die an httpd.conf vorgenommenen Änderungen, und schließen Sie die Datei.
  3. Erstellen Sie im Verzeichnis apache_install_dir/conf eine neue Datei mit dem Namen tilecaching.conf.
    1. Öffnen Sie tilecaching.conf in einem Texteditor, und fügen Sie folgende Zeilen hinzu:
      Anmerkung: Platzhalterwerte werden fett und kursiv dargestellt. Ersetzen Sie diese durch die Ist-Werte Ihres Systems.
      
      
      LoadModule proxy_module modules/mod_proxy.so
      LoadModule proxy_http_module modules/mod_proxy_http.so
      LoadModule headers_module modules/mod_headers.so
      
      <Directory "c:/maptilecache_dirname">
          AllowOverride None
          Order allow,deny
          Allow from all
      </Directory>
      
      NameVirtualHost *:90
      NameVirtualHost *:80
      
      ProxyRequests off
      ProxyPreserveHost On
      
      <Proxy *>
          Order allow,deny
          Allow from all
      </Proxy>
      
      <VirtualHost *:80>
          ServerName spatialserver
      
          <Location /rest/MapTilingService/NamedTiles/>
              RequestHeader unset Authorization
          </Location>
      
          ProxyPass /rest/MapTilingService/NamedTiles/ http://spatialserver:90/rest/MapTilingService/NamedTiles/
          ProxyPassReverse /rest/MapTilingService/NamedTiles/ http://spatialserver:90/rest/MapTilingService/NamedTiles/
      
          ProxyPass / http://spatialserver:8080/
          ProxyPassReverse / http://spatialserver:8080/
      </VirtualHost>
      
      <VirtualHost *:90>
          ServerName spatialserver
      
          ProxyPass / http://spatialserver:8080/
          ProxyPassReverse / http://spatialserver:8080/
      
          <Location /rest/MapTilingService/NamedTiles/>
              Header merge cache-control "public"
              RequestHeader set Authorization "Basic YWRtaW46YWRtaW4="
          </Location>
      
          LoadModule cache_module modules/mod_cache.so
          LoadModule disk_cache_module modules/mod_disk_cache.so
          CacheRoot c:/maptilecache_dirname
          CacheEnable disk /rest/MapTilingService/NamedTiles/
          CacheIgnoreHeaders None
      </VirtualHost>
      
      					
    2. Speichern Sie die an tilecaching.conf vorgenommenen Änderungen und schließen Sie die Datei.
  4. Erstellen Sie das Verzeichnis, in dem die zwischengespeicherten Kartenkacheln gespeichert werden. Geben Sie dem Verzeichnis einen sinnvollen Namen, der den Zweck verdeutlicht, z. B. maptilecache.

    Vergewissern Sie sich, dass der Name in der Konfigurationsdatei „tilecaching.conf “ richtig angegeben ist.

  5. Starten Sie den Apache-Webserver neu.