OpenPNEでのログインセッション管理の改善方法(さくらインターネット)

·

オープンソースのOpenPNEを使って運営しているSNSにおいて

・ログインが途切れてしまう
・自動ログイン設定が反映されない

といったトラブル(問題)が発生した場合の対策・対処方法は、以下。

記載例は、OpenPNE運営の定番サーバーとも言えるさくらインターネットの場合。

ちなみに、会員数1000人程度までであれば、ハッスルサーバーでも運営は可能(体験済)

変更するのは「config.php」ファイル

■その1

// セッション情報を保存するストレージ
// 0:ファイル
// 1:データベース
// 2:memcache(要PECL::memcache)
define(‘SESSION_STORAGE’, 0);

これを

define(‘SESSION_STORAGE’, 1);

とする。

■その2

// セッションデータ保存用DB(オプション)
//$GLOBALS[‘_OPENPNE_DSN_LIST’][‘session’] = array(
// ‘dsn’ => array(
// ‘phptype’ => ‘mysql’,
// ‘username’ => ”,
// ‘password’ => ”,
// ‘hostspec’ => ‘localhost’,
// ‘database’ => ”,
// ‘new_link’ => false,
// ),
//);

これを

// セッションデータ保存用DB(オプション)
$GLOBALS[‘_OPENPNE_DSN_LIST’][‘session’] = array(
‘dsn’ => array(
    ‘phptype’  => ‘mysql’,
    ‘username’ => ‘アカウント名’,
    ‘password’ => ‘パスワード’,
    ‘hostspec’ => ‘mysqlXX.db.sakura.ne.jp’,
    ‘database’ => ‘アカウント名’,
    ‘new_link’ => false,
    ),
);

※行頭にある//をすべて取る(消す)

とする。

以上2点を変更すうことにより、セッション情報はDB(MySQL)内に保存されるようになる。

デジタルゲートが使って選んだ、OpenPNEにオススメのレンタルサーバー