提供: すだちWiki
移動先: 案内検索

OpenPNE2のインストール

メインページコンテンツ・マネジメント・システム(CMS)OpenPNEの構築OpenPNE2のインストール

※このバージョンは、サポートが終了しています

はじめに

OpenPNEでSNS(ソーシャルネットワーキングサイト)を構築する。
※Webサーバー+PHP、Webサーバー間通信内容暗号化、MySQLデータベース、メールサーバー(Postfix+Dovecot)が構築済であること。
ただし、メールサーバーは携帯からメール投稿する場合のみ。

OpenPNEインストール

設置

※最新版は[[ダウンロードページ>http://www.openpne.jp/pne-downloads]]で確認すること
OpenPNEダウンロード

[root@host1 ~]# wget http://downloads.sourceforge.net/openpne/OpenPNE-2.10.13.tar.bz2

OpenPNE展開

[root@host1 ~]# tar jxvf OpenPNE-2.10.13.tar.bz2 

OpenPNE展開先ディレクトリを所定の場所へリネーム移動

[root@host1 ~]# mv OpenPNE-2.10.13/ /var/www/OpenPNE

OpenPNEディレクトリ所有者をsysopに変更

[root@host1 ~]# chown -R sysop:sysop /var/www/OpenPNE/

OpenPNEvarディレクトリのパーミションを変更

[root@host1 ~]# chmod -R 777 /var/www/OpenPNE/var/

ダウンロードしたファイルを削除

[root@host1 ~]# rm -f OpenPNE-2.10.13.tar.bz2

MySQL設定

MySQLへrootでログイン

[root@host1 ~]# mysql -u root -p
Enter password:  ← MySQLのrootパスワード応答

openpneユーザ作成

mysql> grant all privileges on openpne.* to openpne@localhost identified by 'v2EcT8vS';
Query OK, 0 rows affected (0.08 sec)

openpneデータベース作成

mysql> create database openpne;
Query OK, 1 row affected (0.00 sec)
 
mysql> exit
Bye
 
[root@host1 ~]# mysql -u openpne -p openpne < /var/www/OpenPNE/setup/sql/mysql41/install/install-2.10-create_tables.sql
Enter password: ← openpneユーザのパスワード応答
 
[root@host1 ~]# mysql -u openpne -p openpne < /var/www/OpenPNE/setup/sql/mysql41/install/install-2.10-insert_data.sql
Enter password: ← openpneユーザのパスワード応答

OpenPNE設定

[root@host1 ~]# cp /var/www/OpenPNE/config.php.sample /var/www/OpenPNE/config.php ← 設定ファイルをサンプルよりコピー

[root@host1 ~]# mkpasswd -l 56 ← ランダムな56桁の文字列を取得※OpenPNE設定ファイル編集で使用する
nlzrpfgkclbdxhh3Rkxktyowxxxxxiagtasrfu>ymslvgfnnm8faKgo

 [root@host1 ~]# vi /var/www/OpenPNE/config.php ← OpenPNE設定ファイル編集

// Web上の絶対パス(URL)(最後にスラッシュを付けてください)
define('OPENPNE_URL', 'http://www.sudachi.jp/sns/'); ← 変更

// DBサーバ設定
$GLOBALS['_OPENPNE_DSN_LIST']['main'] = array(
'dsn'  => array(
    'phptype'  => 'mysql',
    'username' => 'openpne', ← MySQLに登録したopenpneデータベースアクセスユーザ名を指定
    'password' => 'xxxxxxxx', ← 上記ユーザのパスワードを指定
    'hostspec' => 'localhost',
    'database' => 'openpne', ← MySQLに登録したopenpneデータベース名を指定
    'new_link' => false,
    ),
);

// DB暗号化キー(56バイト以内のASCII文字列)
define('ENCRYPT_KEY', 'nlzrpfgkclbdxhh3Rkxktyowxxxxxiagtasrfu>ymslvgfnnm8faKgo' ); ← ランダムな56桁の文字列を指定

// メールサーバードメイン
// 携帯メール投稿の宛先などのドメイン名に使われる
define('MAIL_SERVER_DOMAIN', 'centossrv.com'); ← メールサーバードメイン名を  指定

// デバッグモード
// 0: off ... エラー非表示、エラーログを記録する
// 1: on  ... エラー表示、エラーログを記録しない
// 2: on  ... 1 + Smartyデバッグコンソール
define('OPENPNE_DEBUGGING', 0); ← デバッグモードをoffにする

// 特定ページだけのSSLを使用するかどうか
define('OPENPNE_USE_PARTIAL_SSL', true); ← trueに変更

// SSL用URL (Cookieの値を引き継ぐため、OPENPNE_URL と同一ドメイン・パスである必要があります)
define('OPENPNE_SSL_URL', 'https://www.sudachi.jp/sns/'); ← 変更

// SSLを使用することが必須であるアクションリスト
$GLOBALS['_OPENPNE_SSL_REQUIRED'] = array(
追加(ここから)管理ページへSSL(https)でアクセスするようにする
'admin' => array(
    'page_login',
),
追加(ここまで)

'ktai' => array(
削除(ここから)証明書が信頼できないと警告が出て携帯からSSLでアクセスできない。
    'page_o_login', 'do_o_login', 'do_o_easy_login',
    'page_o_login2', 'do_o_update_ktai_address',
    'page_o_regist_pre', 'page_o_regist_input', 'do_o_insert_c_member',
    'page_o_regist_end',
    'page_o_password_query', 'do_o_password_query',
    'page_h_config_prof', 'do_h_config_prof_update_c_member',
    'page_h_config_easy_login', 'do_h_config_easy_login',
    'page_h_config_mail', 'do_h_config_mail_insert_c_ktai_address_pre',
    'page_h_pc_send', 'page_h_pc_send_confirm', 'do_h_pc_send_insert_c_pc_address_pre',
    'page_h_config_password_query', 'do_h_config_password_query_update_password_query',
    'page_h_config_password', 'do_h_config_password_update_password',
    'page_h_config', 'page_h_invite', 'do_h_invite_insert_c_invite',
削除(ここまで)
));

OpenPNE用CRON登録

[root@host1 ~]# vi /etc/cron.d/openpne

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

携帯でメール投稿設定

-当サイトのメールサーバー --メールサーバー構築(qmail+Dovecot) --メールサーバー間通信内容暗号化(ucspi-tcp-ssl) --メールサーバーでウィルス&スパムチェック(Qmail-Scanner+Clam AntiVirus+SpamAssassin+maildrop) --バーチャルドメイン設定(vpopmail) --vpopmail用メールアカウント&メーリングリスト管理システム導入(qmailadmin)

メールアカウント&メーリングリスト管理システムで投稿用メールアドレス「sns_xxxxxx」をこしらえる。

[root@host1 ~]# vi /home/vpopmail/domains/sudachi.jp/sns_xxxxxx/.qmail

|/usr/bin/php /var/www/OpenPNE/bin/mail.php

[root@host1 ~]# vi /home/vpopmail/domains/sudachi.jp/.qmail-default

| /home/vpopmail/bin/vdelivermail  delete
↓
| /home/vpopmail/bin/vdelivermail  /home/vpopmail/domains/sudachi.jp/sns_xxxxxx

chmod 755 /var/www/OpenPNE/bin/mail.php ← 実行できるようにパーミッション変更

※テストで携帯アクセス、携帯メール投稿は正常に動作しています。