ホーム > GIS/RS > TinyOWS導入手順の覚書

TinyOWS導入手順の覚書

地理データのCrowd sourcingのためにWFS-Tをセットアップすることにした。WFS-Tのサーバーソフトウェアには、GeoServerが有名だが高機能ゆえに細部に注意が行き渡っていない印象が個人的にある。本件では、PostGISのデータベースをWFS-T経由で編集するサービスを考えていたのだが、GeoServerだとなぜかうまくいかない。というわけで、WFS-Tの別のサーバーソフトウェアであるTinyOWSを使ってみることにした。以下、デモデータによる動作確認までの導入手順。

PostgresqlとPostGISのインストール

各々の環境に合わせて適宜。本稿ではDebian lennyで下記を実行。

apt-get install postgresql postgis postgresql-8.4-postgis libpq-dev apache2

pg_hba.confの編集

TinyOWSからPostgresqlのデータベースに接続するのにTCP/IPソケットを使うので、pg_hba.confを編集する。Debian lennyでは /etc/postgresql/8.4/main/pg_hba.conf。最後の数行の規定値「md5」を「trust」にする。

# IPv4 local connections:
host    all         all         127.0.0.1/32          trust
# IPv6 local connections:
host    all         all         ::1/128               trust

TinyOWSのビルド

Debianではパッケージが用意されていないので、ソースからビルドする。デモデータのインストールではcreatedbをやったりするので、データベースのスーパーユーザー権限を持つPostgresqlユーザーでビルドしたほうが無難。

wget http://tinyows.org/tracdocs/release/tinyows-1.0.0rc4.tar.bz2
tar xaf tinyows-1.0.0rc4.tar.bz2
cd tinyows
./configure
make
cp tinyows /usr/lib/cgi-bin/

デモデータのインストール

make install-demo

でデモデータのインストールが実行されるが、実際にやっていることは demo/install.sh の実行と demo/tinyows.xml を /etc/tinyows.xml にコピー。demo/install.sh では su postgres で createdb や psql を実行しているので、パスワードを設定している場合には連続してパスワードの問い合わせが来る。面倒くさい場合には、demo/install.sh を編集してsu postgresを外す。

デモデータの設定ファイルの編集

/etc/tinyows.xml 2行目の schema_dir=”/usr/local/share/tinyows/schema/” を、ソースコードを展開したディレクトリのschemaに書き換える。このとき、最後のスラッシュを入れることに注意する。無いとトランザクションが効かなくなる。

WFS-Tを試す

QGISならばプラグインでWFSレイヤの追加がなされる。WFSサーバーに接続するにはURLに http://********/cgi-bin/tinyows を指定すればOK。「接続」でデモデータのレイヤ一覧(世界の国境データ、フランスの行政界データ)が表示される。レイヤを追加したら、鉛筆マークのアイコンをクリックして編集モードを始めた後、適当にフィーチャを追加してフロッピーディスクのアイコンをクリックすると新しいデータのトランザクションがなされる。

なお、GML3.1.1の配信についてはLibxml2で対応されていないため、特別の対応が必要だがが、GML2を使うぶんには問題なさそう。

カテゴリー: GIS/RS タグ:
  1. コメントはまだありません。
  1. トラックバックはまだありません。