現在、SNS(ソーシャルネットワーキングサービス)は、mixiやGREEをはじめ多くのサービスが提供されています。SNSは「趣味」の領域のもの思われている方も多いでしょう。しかし、代表的な機能である日記のほかにも、写真や動画、音声などを利用者間で共有することができるため、企業内における「新たな情報共有ツール」として注目されています。実際に、社内にSNSを導入している企業も増えてきているのです。
注目されているとはいえ、SNSの導入には相応のコストが必要と考えてはいないでしょうか?
そんなことはありません。SNSサイトを構築するためのツールはオープンソースで無償で使用できるものがあります。さらにVPSを利用すればシステム環境を安価に整えることができます。初期設定や運用管理に多少の労力を要しますが、「とりあえずテストで使用してみる」というスタンスですぐに使いはじめることができますので、小規模なオフィスでも導入が可能です。
![]() |
||||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
OpenPNEインストールの準備
それでは早速SNSサイトを構築してみましょう。今回は@YMCのVPSサーバーとオープンソースの「OpenPNE」を組み合わせたSNS構築の流れを紹介します。OpenPNEを使用するには、「php-mysql」「php-gd」「php-mbstring」が必要になりますので、まず、これらがインストールされているか確認します。
$ ssh -l admin vps-tokusyu.com
admin@vps-tokusyu.com's password:
Last login: Thu Jul 19 03:36:51 2007 from 125x103x246x173.ap125.ftth.ucom.ne.jp
$ yum list installed php-mysql php-gd php-mbstring
Loading "fastestmirror" plugin
いずれもインストールされていませんので、早速インストールしていきましょう。
$ su
Password:
# yum install -y mysql-server mysqlclient php-mysql php-gd php-mbstring
(中略)
Installed: mysql-server.i386 0:4.1.20-2.RHEL4.1 php-gd.i386 0:4.3.9-3.22.5 php-mbstring.i386 0:4.3.9-3.22.5 php-mysql.i386 0:4.3.9-3.22.5
Dependency Installed: perl-DBD-MySQL.i386 0:2.9004-3.1.centos4
Complete!
エラーメッセージが表示されることなく、インストールすることができした。
OpenPNEのダウンロードとインストール
次に、OpenPNEをダウンロードして展開します。ここでは執筆時点(2007年7月)で安定版の最新バージョンである「2.8.1」をダウンロードしてインストールします。なお、アーカイブにはtgz、zip、bzip2の3種が用意されていますが、ここではもっとも圧縮率が高いbzip2のアーカイブを使用します。
$ cd /tmp
$ wget http://jaist.dl.sourceforge.net/sourceforge/openpne/OpenPNE-2.8.1.tar.bz2
--00:15:56-- http://jaist.dl.sourceforge.net/sourceforge/openpne/OpenPNE-2.8.1.tar.bz2
=> `OpenPNE-2.8.1.tar.bz2'
Resolving jaist.dl.sourceforge.net... 150.65.7.130
Connecting to jaist.dl.sourceforge.net|150.65.7.130|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3,212,585 (3.1M) [application/x-bzip2]
100%[====================================>] 3,212,585 983.80K/s ETA 00:00
00:15:59 (981.32 KB/s) - `OpenPNE-2.8.1.tar.bz2' saved [3212585/3212585]
$ tar jxf OpenPNE-2.8.1.tar.bz2
展開したディレクトリを任意の場所に移動します。
$ su
Password:
# mv OpenPNE-2.8.1 /var/www/OpenPNE
次に、オーナー、グループをApacheの実行ユーザーに変更します。ここでは、httpd.confの初期設定値に設定します。もしhttpd.confを変更している場合は、適切なものに設定してください。
# chown -R apache:apache /var/www/OpenPNE/
最後に、OpenPNEにすべての人がアクセスできるよう、パーミッションを変更し、OpenPNEのインストールは終了です。
# chmod -R 777 /var/www/OpenPNE/var/
MySQLの起動とデータベースの初期設定
続けて、MySQLの設定を行います。これはOpenPNEのデータをMySQLで管理するため、OpenPNE用のデータベースとそのデータベースへのアクセス用ユーザをMySQLに登録する必要があるためです。ここでは、データベース名およびデータベースアクセス用のユーザー名の双方を「openpne」として登録することにします。まず、MySQLを起動しましょう。
# /etc/init.d/mysqld start
Initializing MySQL database: [ OK ]
Starting MySQL: [ OK ]
次にMySQLサーバーに接続し、OpenPNEユーザーを作成します。変更または追記すべき部分は【】で囲んであります。
# mysql -u root -p【パスワード】
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 23 to server version: 4.1.20
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql> grant all privileges on openpne.* to openpne@localhost identified by '【パスワード】';
Query OK, 0 rows affected (0.00 sec)
続いてデータベースを作成し、ログアウトします。
mysql> create database openpne;
Query OK, 1 row affected (0.00 sec)
mysql> exit
Bye
作成したデータベースをOpenPNE用に設定します。
# mysql -u openpne -p openpne < /var/www/OpenPNE/setup/sql/mysql41/install/install-2.8-create_tables.sql
Enter password:
# mysql -u openpne -p openpne < /var/www/OpenPNE/setup/sql/mysql41/install/install-2.8-insert_data.sql
Enter password:
以上で、MySQLの設定は終了です。実際に運用するにあたって、事前にMySQLの設定ファイル(/etc/my.cnf)や、初期値として登録されているユーザーのうち不要なユーザーの削除、パスワードの設定などが必要となります。なお今回はOpenPNEを使用する上での最低限の操作にとどめ、詳細は割愛させていただきます。
OpenPNEの設定
ここまでで、OpenPNEを使用するための準備が完了しましたので、次にOpenPNEの設定を行いましょう。OpenPNEにはあらかじめ、設定ファイルのサンプルが用意されています。オリジナルは保存しておき、作業はコピーしたファイルで行います。次のコマンドでサンプルファイルをコピーしてリネームします。
# cp /var/www/OpenPNE/config.php.sample /var/www/OpenPNE/config.php
コピーしたファイルをテキストエディタで開き、編集します。
# vi /var/www/OpenPNE/config.php
なお、今回で使用しているOpenPNEの設定ファイルは189行もありますので、すべてを取り上げることはできません。そこで、ポイントとなる部分だけを抜粋して解説します。なお、設定が必須となる項目には白文字で、セキュリティの観点から設定した方がよい項目は赤文字で示します。また、変更または追記すべき部分は【】で囲み、値を代入する部分については日本語表記します。
config.php(画像をクリックすると拡大表示します)
OpenPNEの基本的な設定は以上です。次に自動的にメールの送受信を行ったり、RSSの更新が行われるように設定しておきましょう。
# crontab -e
今回は午前6時にメールを送信し、20分ごとにRSSを更新するように以下のように記述します。
(画像をクリックすると拡大表示します)
また、SNSの管理者宛てメールをWebマスターのアカウントに転送するようにしておきます。
# echo sns: webmaster >> /etc/aliases
# newaliases
/etc/aliases: 79 aliases, longest 10 bytes, 814 bytes total
Apacheの設定
@YMCのVPSには、ApacheとPHPがインストールされていますので、初期設定は完了しています。今回はOpenPNEのファイルにアクセスできるよう、ドキュメントパスを通すための設定ファイルを作成します。
# echo "Alias /openpne /var/www/OpenPNE/public_html" > /etc/httpd/conf.d/openpne.conf
以上で、OpenPNEが動作する環境が整いました。
OpenPNEの動作確認と設定
ここから先はWebブラウザを使用してSNS名、管理用アカウント、初期ユーザーの設定などを行います。「https://【WebサーバーのFQDN】/openpne/?m=setup」を指定して管理ページにアクセスします。
OpenPNEセットアップ画面(画像をクリックすると拡大表示します)
SNS名、初期ユーザー、管理用アカウントそれぞれを入力して、「セットアップ実行」ボタンをクリックしてください。
以降の設定や操作は、GUIで行えます。この操作方法については、はじめてのOpenPNE - 社内SNSの意義と活用方法)を参考に進めてください。以上で、OpenPNEの使用環境の構築が完了しました。
レンタルサーバーの中でもVPSというと、かなり特殊な構成になっており、用途が限定されるのではないかと考えがちですが、LAMPを使用したOpenPNEに限っていえば、専用サーバーとの違いはほとんどないといえるでしょう。また、複数のユーザーで共有することからパフォーマンスが気にかかりますが、SNSを使用する上ではこの点においてもまったくパフォーマンスの低下を感じることはありません。
OpenPNEは、グループウェアとして使用することを目的としているわけではないので、スケジュール表や会議室予約といったメニューは用意されていません。しかし小規模オフィスなら、それぞれを「日記」や「メール」で代替することは十分可能でしょう。
特に「日記」は、活用範囲が広いものです。単に業務記録として使用する以外にも、自分自身の備忘録としても活用できます。また、ToDoリストやリマインダーの機能としても使えるでしょう。
さらに、業務上の疑問や問題を書き込み、それに対して他の人がコメントをつけることで、ナレッジマネジメントとして活用するという方法もあります。形式張った業務報告書だと、たとえ業務であっても目を通すことに積極的になれませんが、写真や音声が含まれるとかなり印象が異なってくるに違いありません。
VPS+SNSは、小規模オフィスにとって手軽に費用対効果の高い情報管理システムを実現するサービスであるといえるでしょう。
![]() |
![]() |
提供:株式会社 アット・ワイエムシー
企画:シンクイット 企画営業部
制作:シンクイット 編集局・制作進行部
掲載内容有効期限:2007年8月31日
当記事は、右記サイトに掲載された時点の最新情報に基づき執筆されています。古い情報が含まれている可能性がありますので、ご了承ください(2012年12月時点)。