Hatena::ブログ(Diary)

cake bake diary

2010年03月11日

Fatal error: Cannot redeclare session_use_trans_sid()

| 19:48 | Fatal error: Cannot redeclare session_use_trans_sid()を含むブックマーク Fatal error: Cannot redeclare session_use_trans_sid()のブックマークコメント

Cake1.3にKtai Libraryをインストールすると、

 Fatal error: Cannot redeclare ktai_session_use_trans_sid() (previously declared in /www/lightning/public/config/ktai_session.php:24) in /www/lightning/public/config/ktai_session.php on line 34

のようなエラーが出る。

このエラーはセッションがタイムアウトした時に1回だけ出るもよう。

(再びタイムアウトすれば、また出る)

調べたらCannot redeclareエラーは関数が再定義された時に出るらしい。

たぶんcake_session.php 552行目の

require ($config);

が原因と思われ。

ここを下記の用に修正。

require_once($config);

1.2系のsession.phpはちゃんとrequire_onceになってるのに、なんでだろ(´・ω・`)

w3110w3110 2010/03/15 19:45 1.2.6でも起きていて、なんでだろーと思ってました。
http://github.com/cakephp/cakephp1x/commit/7e889d849557f97a2f46166cef8c4bfd37b35a9e

1.2.5から1.2.6に上がったときに変更があったみたいです。

トラックバック - http://d.hatena.ne.jp/gapao/20100311/1268304494