Apache を使用したタイル キャッシュの作成
マップ タイルのキャッシュは、Apache HTTP Server の組み込みキャッシュ メカニズムを利用して実行できます。事前にレンダリングされたタイル、またはその場でレンダリングされるタイル用にタイル キャッシュを設定するには
-
Spectrum™ Technology Platformインストールのフロント エンドとして使用する Apache HTTP Server のインスタンスをダウンロードし、インストールします。
注: Apache Web サーバーは、Spectrum™ Technology Platformをホストするコンピュータにネットワーク アクセスできるコンピュータにインストールする必要があります。
フロントエンド Apache サーバーは、リクエストされたマップ タイルをディスクにキャッシュするために NamedTile リクエストを傍受する一種のフィルタの働きをします。
-
Apache サーバーの設定ファイルを次のように変更します。apache_install_dir/conf/httpd.conf
- httpd.confをテキスト エディタで開きます。
-
httpd.conf内で次の行を探します。
Listen 80
この行のすぐ下に次の行を追加します。
Listen 90
-
ファイルの末尾に次の行を追加します。
Include conf/tilecaching.conf
- httpd.confに加えた変更を保存し、ファイルを閉じます。
-
apache_install_dir/confディレクトリに、tilecaching.conf という名前の新しいファイルを作成します。
-
tilecaching.confをテキスト エディタで開き、次の行を追加します。
注: プレースホルダーの値を太字の斜体で示しています。これらは、使用するシステムの実際の値に置き換えてください。
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>
- tilecaching.confに加えた変更を保存し、ファイルを閉じます。
-
tilecaching.confをテキスト エディタで開き、次の行を追加します。
-
キャッシュされたマップ タイルを保持するディレクトリを作成します。このディレクトリには、用途がわかりやすい名前を付けてください (maptilecacheなど)。
tilecaching.conf 設定ファイルで、名前を正しく指定します。
- Apache Web サーバーを再起動します。