[2010-04-11-1] の補完。

Debian squeeze でのイントラネット版 Twitter「StatusNet」の構築方法
をまとめます。

構築の前に

StatusNet は PHP で書かれているので、以下のような基本的な PHP スク
リプトが Web サーバ上で動くことを確認しておきます。

<?php phpinfo(); ?>

構築手順

※ “#” は root での作業、"%" は一般ユーザでの作業です。

1. http://status.net/ から tar ball を落とし、/var/www に展開します。

# cd /var/www
# tar xzf statusnet-0.9.1.tar.gz

2. リネームします。

# mv statusnet-0.9.1 statusnet

3. アクセス権を適切に設定します。

# cd statusnet
# chown -R root:root .
# chown www-data:www-data . avatar background file

4. MySQL の DB を作成します。

% mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1292
Server version: 5.1.45-1 (Debian)

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
+--------------------+
2 rows in set (0.00 sec)

mysql> create database statusnet;
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| statusnet          |
+--------------------+
3 rows in set (0.00 sec)

mysql> grant all privileges on statusnet.* to statusnetuser@localhost identified by 'statusnetpassword';
Query OK, 0 rows affected (0.00 sec)

mysql> exit;
Bye

5. http://<インストールするマシン名>/statusnet/install.php にアクセスします。

以下を参考に StatusNet の設定をします。

設定名
Site name Hoge StatusNet
Fancy URLs disable
Hostname localhost
Type MySQL
Name statusnet(※1)
DB username statusnetuser(※1)
DB password statusnetpassword(※1)
Administrator nickname root(※2)
Administrator password rootpassword(※2)
Subscribe to announcements チェック

(※1) 4 で設定した DB 名やユーザ名を入力します。
(※2) これが StatusNet の管理者アカウントになります。

6. 問題なくインストール完了

インストーラにバグがあるのか、今回はここで止まってしまいましたが、
http://<インストールするマシン名>/statusnet/ には問題なくアクセスで
きたので、まあ良しとします。

Install StatusNet
・Starting installation...
・Checking database...
・Changing to database...
・Running database script...
・Adding SMS carrier data to database...
・Adding notice source data to database...
・Adding foreign service data to database...
・Writing config file...

curl や gd、mysql 関連のエラーが出たら、該当のパッケージをインストー
ルし、Apache を再起動してください。

# /etc/init.d/apache2 restart

私の場合は php5-curl, php5-gd, php5-mysql をインストールする必要が
ありました。

参考情報:
statusnet-0.9.x.tar.gz の README