top / index / prev / next / target / source

2012-08-28 diary: DAViCal という OSS カレンダー・サーバー実装

いがぴょんの日記 日記形式でつづる いがぴょんコラム ウェブページです。

DAViCal という OSS カレンダー・サーバー実装

CalDAV というカレンダー・サーバー・プロトコルがあるのですが、これのサーバーとして DAViCal というサーバー実装があります。 こちらの実装がそこそこ良くできていまして、いま、私は DAViCal に注目しています。

Ubuntu 12.04 への DAViCal セットアップ

一般的に重要なことですが、アプリケーションのセットアップに先立ち、まず最初に「アップデートマネージャー」をもちいて、ひととおりの update を実施します。

依存パッケージのインストール

DAViCal が依存するパッケージについて、ひととおりセットアップします。

sudo apt-get update
sudo apt-get install apache2
sudo apt-get install php5
sudo apt-get install postgresql-9.1
sudo apt-get install libdbi-perl libdbd-pg-perl libyaml-perl
sudo apt-get install libapache2-mod-php5

PostgreSQL 設定の実施

DAViCal 用の設定を記述します。 ☆本格的に本番利用する場合には、セキュリティを意識した、もう少し複雑な設定をおこなう必要があります。

sudo vi /etc/postgresql/9.1/main/pg_hba.conf

vi エディタで以下の記述をおこないます。この記述は、この設定ファイルの やや上のほうに書く必要があります。記述すべき箇所は、設定ファイルにもともと書いてあるコメントを読めば分かります。

local   davical    davical_app   trust
local   davical    davical_dba   trust

設定の有効化のために、てっとりばやくシャットダウン

sudo shutdown -r now

【少し古くても良ければスキップ可能】 「最新版」の DAViCal を利用する手順

sudo vi /etc/apt/sources.list

vi エディタで以下の記述を追記します。

deb http://debian.mcmillan.net.nz/debian precise awm

DAViCal のインストール

sudo apt-get update
sudo apt-get install davical

DAViCal のデータベースを作成します。

sudo -u postgres /usr/share/davical/dba/create-database.sh

☆このコマンドが正常終了した際には、標準出力に管理者用のユーザー名とパスワードが表示されます。ここで出力されたパスワードをメモすることが重要です。

sudo cp -p /usr/share/doc/davical/examples/debug-config.php /etc/davical/config.php
sudo vi /etc/davical/config.php

以下の記述を追加します。

  $c->pg_connect[] = 'dbname=davical port=5432 user=davical_app';
sudo vi /etc/apache2/sites-available/default

このファイル中に、DAViCal の仮想ホストのテンプレを貼り付けます。 ☆TODO : もっとちゃんと 仮想ホスト設定できるとおもいます。

設定の有効化のために、てっとりばやくシャットダウン

sudo shutdown -r now

初期セットアップの際の URL

http://XXXXXXXXXXXXXXX/setup.php

管理画面を開く際の URL

http://XXXXXXXXXXXXXXX/admin.php

各ユーザー用に作成されるデフォルトのカレンダー URL

http://XXXXXXXXXXXXXXX/caldav.php/<ユーザー名>/calendar/

セキュリティを意識する場合

セキュリティを意識する場合には、http ではなく https に切り替える設定を行う必要があります。


この日記について