CentOS5で新サーバ構築/(8)OpenPNEのインストール

Last-modified: 2008-07-09 (水) 12:00:11 (5789d)

OpenPNEのインストール

  • ようやく、現サーバのコンテンツ類が移行できた。ようやく本命のSNS:OpenPNEのインストールに取り掛かることになった。考えてみたら、文字化け対策や何やらで半年近くモタモタとしていたことになった(^^;)
  • OpenPNEは新規構築なので、そういう意味では「しがらみ」は何もない。ただ突っ走るのみ! のはずだったが。。

OpenPNEとは

  • フリーのSNSソフトはいくつかあるようだが、これが一番しっかりしてるみたい(^^) というわけであまり深く考えずに取り組んだ。So-netも試験運用してたことは後で気がついたが、ユーザ向けマニュアルも整備されていて助かった次第。
  • 開発元は、手嶋屋さん。 商売物だが、オープンソースのSNSエンジンで、こちらが公式HPである。      
    op_logo.jpg
  • 例によって、「CentOSで自宅サーバ構築」の解説記事を参照すれば、淡々と進めることができます。以下は、ポイントのみ記録。

OpenPNEのダウンロード

  • 2008年1月時点の最新案定版は ver2.10.2でした。wgetでサーバ上に直接ダウンロードします。
    [root@kuraric5 ~]# wget http://downloads.sourceforge.net/openpne/OpenPNE-2.10.2.tar.bz2
    --15:44:13--  http://downloads.sourceforge.net/openpne/OpenPNE-2.10.2.tar.bz2
    downloads.sourceforge.net をDNSに問いあわせています... 66.35.250.203
    【中略】
    長さ: 4832000 (4.6M) [application/x-bzip2]
    Saving to: `OpenPNE-2.10.2.tar.bz2'
    
    100%[=======================================>] 4,832,000   2.61M/s   in 1.8s
    
    15:44:16 (2.61 MB/s) - `OpenPNE-2.10.2.tar.bz2' を保存しました [4832000/4832000]

OpenPNEのインストールと基本設定

  • ダウンロードしたファイルを解凍
    [root@kuraric5 ~]# tar jxvf OpenPNE-2.10.2.tar.bz2
    OpenPNE-2.10.2/
    OpenPNE-2.10.2/bin/
    OpenPNE-2.10.2/bin/mail.php
    【中略】
    OpenPNE-2.10.2/webapp/templates/debug.tpl
    OpenPNE-2.10.2/webapp/templates/error.tpl
  • OpenPNE展開先のDIRにリネームコピーし、属性等を変更する
    [root@kuraric5 ~]# mv OpenPNE-2.10.2/ /var/www/OpenPNE
    [root@kuraric5 ~]# chown -R apache:apache /var/www/OpenPNE/
    [root@kuraric5 ~]# chmod -R 777 /var/www/OpenPNE/var/
  • OpenPNE用のデータベースを作成する
    [root@kuraric5 ~]# cd /var/www/OpenPNE
    [root@kuraric5 OpenPNE]# mysql -u root -p
    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 79 to server version: 5.0.22
    
    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
    
    mysql> CREATE DATABASE `openpne` DEFAULT CHARACTER SET utf8;
    Query OK, 1 row affected (0.00 sec)
    
    mysql> exit
    Bye
  • セットアップ実行 必要なsqlファイルは、あらかじめ用意されている。なお、MySQL5用には、mysql41/配下の関連ファイルを適用する。
    [root@kuraric5 OpenPNE]# ls -l setup/sql/mysql41/install
    合計 84
    -rw-r--r-- 1 apache apache 42518 12月 18 13:52 install-2.10-create_tables.sql
    -rw-r--r-- 1 apache apache 40778 10月 23 02:12 install-2.10-insert_data.sql
    
    [root@kuraric5 OpenPNE]# cd setup/sql/mysql41/install
    [root@kuraric5 install]# mysql -u openpne -p --default-character-set=utf8 openpne < install-2.10-create_tables.sql
    Enter password:   【kuraric  と入力】
    
    [root@kuraric5 install]# mysql -u openpne -p --default-character-set=utf8 openpne < install-2.10-insert_data.sql
    Enter password:   【kuraric  と入力】
    
  • config設定 サンプルファイルをコピーして修正する
    [root@kuraric5 install]# cd /var/www/OpenPNE
    [root@kuraric5 OpenPNE]# cp config.php.sample config.php
  • DB暗号化キーをあらかじめ生成しておく。
    【重要事項】その際、オプション[-s 0]で、特殊文字を含まないように指定しておくこと!!
    さもないと、php実行時のエラーが発生して、OpenPNEのセットアップ画面が表示されなくなる!!(これで1ヶ月もたもたした ^^;)
    [root@kuraric5 OpenPNE]# mkpasswd -l 56 -s 0
    iztjfjezaugstb0avnSlbld0iqtdhjwfqpfszztumevociizfmpRgskr
    生成したキーは、あとで、config.phpに入力する
  • configファイルの設定
    [root@kuraric5 OpenPNE]# vi /var/www/OpenPNE/config.php
    =(主な修正個所 ★)========
    // Web上の絶対パス(URL)(最後にスラッシュを付けてください)
    // define('OPENPNE_URL', 'http://sns.example.com/');
    define('OPENPNE_URL', 'http://kurarinet/sns/');   ★
    
    // DBサーバ設定
    $GLOBALS['_OPENPNE_DSN_LIST']['main'] = array(
    'dsn'  => array(
        'phptype'  => 'mysql',
        'username' => 'openpne', ★
        'password' => 'kuraric',  ★
        'hostspec' => 'localhost',
        'database' => 'openpne',  ★
        'new_link' => false,
        ),
    );
    
    // DB暗号化キー(56バイト以内のASCII文字列) ★
    define('ENCRYPT_KEY', 'iztjfjezaugstb0avnSlbld0iqtdhjwfqpfszztumevociizfmpRgskr');
    
    // メールサーバードメイン
    // 携帯メール投稿の宛先などのドメイン名に使われる
    define('MAIL_SERVER_DOMAIN', 'kurarinet.com');  ★招待メールに必要!! 
  • OpenPNE用のcron登録を行う。デイリーニュース配信等の定期作業。
    [root@kuraric5 ~]# crontab -e
    ======以下の4行を追加======
    00   6 * * * /bin/sh /var/www/OpenPNE/bin/tool_send_dairy_news.cron     /var/www/OpenPNE/bin/ /usr/bin/php
    00   6 * * * /bin/sh /var/www/OpenPNE/bin/tool_send_birthday_mail.cron  /var/www/OpenPNE/bin/ /usr/bin/php
    00   6 * * * /bin/sh /var/www/OpenPNE/bin/tool_send_schedule_mail.cron  /var/www/OpenPNE/bin/ /usr/bin/php
    */20 * * * * /bin/sh /var/www/OpenPNE/bin/tool_rss_cache.cron           /var/www/OpenPNE/bin/ /usr/bin/php
  • 1行目は、デイリーメッセージを送信する処理。2行目は、マイフレンドで誕生日の告知メッセージを送る処理。3行目は、スケジュール登録したメッセージを送信するための処理。以上は毎日1回午前6時に実行する。
  • 4行目は、RSSリーダーの読み込み設定。外部ブログリンクをチェックしリストを更新するもので、これは 20分毎に実行する。
  • OpenPNE用Aapche設定ファイルを作成(URLのエイリアス設定)後、再起動して設定反映
    [root@kuraric5 OpenPNE]# echo "Alias /sns /var/www/OpenPNE/public_html" > /etc/httpd/conf.d/openpne.conf
    [root@kuraric5 OpenPNE]# /etc/rc.d/init.d/httpd reload
    httpd を再読み込み中:                                      [  OK  ]

OpenPNEのセットアップ 

  • ブラウザでセットアップ画面を呼び出す
    http://kurarinet.com/sns/?m-setup 
  • 以下の項目を設定すれば完了
    ★設定内容ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
    ■SNS名:クラリNET
    ■初期ユーザ
     アカウント:sysop@xxxxx.com
     パスワード:xxxxx
    ■管理者
     アカウント:xxxxxx
     パスワード:xxxxxxxx

   OP_setup

  • 実行後は次のURLで接続する
    ■管理者ページ
     http://kurarinet.com/sns/?m=admin
    ■ログインページ
     http://kurarinet.com/sns/
  • 併せて、管理者用メールアドレスを新規作成し、Googleアカウントに追加。メンバー向けのニュースがこのアドレスから送信される
    ■SNS管理者メールアドレス sns@kurainet.com 

トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS   リンク元