オープンソースWebGISを構築してみよう その1

中の人が持ち回りで代わっていくGEO Solutions 技術情報。

今回の担当からは(できるだけ)無料でWebGISシステムを構築する
ための情報をいろいろ載せていこうと思います。

入り口とするターゲットとしては次の4つを満たす方を想定しています。
・Google Mapを利用したことがある
(GISでよくあるインターフェイスであったり機能を触ったことがある。)
・地図上に表示したい/関連付けたい情報を持っている。
・blogやホームページといったwebページを公開したことがある。
・でも自分でGISの機能をカスタマイズしたことがない、あるいはほとんどない。

※この記事の技術情報は2014/07 時点のものとなります。

いきなり全世界に向けて公開するには乗り越えるハードルが
いろいろあるので、まずは自分のパソコン上で試す
WebGISのテスト環境の作り方を紹介します。
テスト環境と言ってもサーバOSを利用しているかと
性能調整や設定調整以外の部分では公開する場合と
やることの違いは少なくなっています。

第一にここでOSの制限が発生します。
実際のオープンソースのWebGISの運用現場では
Linuxサーバ上にMapServerを使うというパターンが多いのですが、
バージョンや性能等にこだわらず機能を試すのであればWindows OSが一番簡単です。
WindowsであればMS4Wというまとまった設置の仕組みがあります。
ですので今回の記事の中では、MS4Wを使ってPC上でWebGISシステムを設置し、その後設定や機能追加をやってみようという方向で
話を進めていこうと思います。
またこれ以降の作業ではwindowsの管理者権限が必要になります。管理者権限が利用できない環境ではテストを行えませんのでご了承ください。

まずMS4Wのダウンロードページから
zip Archiveをダウンロードしてください。2014/07では時点3.0.6が最新バージョンとなります。
インストーラではなくZip Archiveを選択するのは作り上げた環境を
コピーして別サーバで使うあるいは一部のみ設定を変更して試す
といった運用をする際にレジストリの書き込みをしていないため
気軽にコピーできるため、とアプリケーション等が全部入りだからです。
MS4WはアプリケーションフォルダにあるファイルだけでWebGISサーバとしてのプログラムファイルを完結させているため、zipから設置した場合も削除が非常に簡単になっています。

このMS4Wの圧縮ファイルを解凍して設置します。推奨の設置場所はCドライブ直下です。(パスが複雑にならないように)
このフォルダの中のapache-install.batが正常に起動できればWebサーバが起動し、ms4wの起動完了です。
ただしwindows vista以降のPCでは実行に一工夫必要です。

前提として、設置したPC自身から

「http://localhost/ 」

というURLをブラウザで表示した際に表示できませんとエラーが出ることを確認してください。
エラーが出なかった場合はすでに別のwebサーバが動いていますので設定変更しないと起動ができません。
他の方がwebサーバを設置された場合はその方に相談し、ご自身でサーバを設置されている場合はどちらかのサーバのポートを80以外に変更してください。

MS4Wの設定は

「c:\ms4w\Apache\conf\httpd.conf 」

で設定できます。

前提確認で問題なかった場合にはまずコマンドプロンプトを管理者権限で実行します。
windows7 であればスタートメニューを出す⇒すべてのプログラムを開く⇒アクセサリ⇒コマンドプロンプトを探し出し、
右クリックで「管理者として実行」を選択します。
このプロンプト上で

「c:\ms4w\apache-install.bat 」

を実行します。
するとたいていの環境ではファイアウォールがwebサーバのアクセス許可を聞いてきますので許可してください。

これで起動完了しました。
起動の確認には設置したPC自身から

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

というURLをブラウザで表示して下さい。
その際「No query information to decode. QUERY_STRING is set, but empty.」というエラーメッセージが正常に表示されれば確認終了です。

如何でしたでしょうか。
初回は駆け足でMS4Wの起動までを説明いたしました。

次回はWeb上に公開されている地図を表示するところまで進められればと思っています。

ではでは。

コメントを残す

メールアドレスが公開されることはありません。