ローカル環境でログアウトすると「予期せぬエラー」

2014年9月17日 at 5:20

ローカル環境(MAMP)のconcrete5.7.0にて、ログアウトをした時に、
concrete5のエラーメッセージで

予期せぬエラーが発生しました。
この要求の処理中にエラーが発生しました。

という表示がされました。
別の環境では表示されないので、環境によって挙動が異なるものなのかとは思いますが、この原因はなんでしょうか。。。

■環境情報
# concrete5 Version
5.7.0

# concrete5 Packages
None

# concrete5 Overrides
languages/da_DK, languages/el_GR, languages/fi_FI, languages/fr_FR, languages/it_IT, languages/ja_JP, languages/ru_RU, languages/sl_SI, languages/sv_SE, languages/tr_TR

# concrete5 Cache Settings
Block Cache - On
Overrides Cache - On
Full Page Caching - Off
Full Page Cache Lifetime - Every 6 hours (default setting).

# Server Software
Apache/2.2.22 (Unix) mod_ssl/2.2.22 OpenSSL/0.9.8y DAV/2 PHP/5.4.4

# Server API
apache2handler

# PHP Version
5.4.4

# PHP Extensions
apache2handler, bcmath, bz2, calendar, Core, ctype, curl, date, dom, ereg, exif, fileinfo, filter, ftp, gd, gettext, hash, iconv, imap, json, ldap, libxml, mbstring, mcrypt, mysql, mysqli, openssl, pcre, PDO, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, Reflection, session, SimpleXML, soap, sockets, SPL, sqlite3, standard, tokenizer, XCache, xml, xmlreader, xmlwriter, xsl, yaz, zip, zlib.

# PHP Settings
max_execution_time - 30
log_errors_max_len - 1024
max_file_uploads - 20
max_input_nesting_level - 64
max_input_time - 60
max_input_vars - 1000
memory_limit - 128M
post_max_size - 32M
sql.safe_mode - Off
upload_max_filesize - 32M
ldap.max_links - Unlimited
mysql.max_links - Unlimited
mysql.max_persistent - Unlimited
mysqli.max_links - Unlimited
mysqli.max_persistent - Unlimited
pcre.backtrack_limit - 1000000
pcre.recursion_limit - 100000
pgsql.max_links - Unlimited
pgsql.max_persistent - Unlimited
session.cache_limiter - no value
session.gc_maxlifetime - 1440
soap.wsdl_cache_limit - 5
xcache.var_maxttl - 0

タグ:

Re: ローカル環境でログアウトすると「予期せぬエラー」

2014年9月18日 at 11:16
5701で試してみてください。色々バグ修正が入ってると思いますので…。

また、エラーメッセージを表示させるには…。
http://notnil-creative.com/blog/archives/3268
 

Re: ローカル環境でログアウトすると「予期せぬエラー」

2014年9月18日 at 16:16
ありがとうございます。
すみません、5.7.0.1でも状況は変わらずでした。
 

Re: ローカル環境でログアウトすると「予期せぬエラー」

2014年9月18日 at 16:32
エラーメッセージは表示できましたか?
 

Re: ローカル環境でログアウトすると「予期せぬエラー」

2014年9月18日 at 17:38
度々すみません。エラーメッセージの表示、できています。
左フレームにも右フレームにも沢山の情報がありますが、どの部分を参照すればよいでしょうか。
 

Re: ローカル環境でログアウトすると「予期せぬエラー」

2014年9月18日 at 22:24
そうなんですよね…。Whoopsのエラー表示は詳細で便利なんですが、コピペしてもらう時困りますな…。とりあえず、右サイドにどのファイルのどの行でエラーになったのか表示されていると思います。
 

Re: ローカル環境でログアウトすると「予期せぬエラー」

2014年9月20日 at 3:27
右サイドの各エラー文をコピペします。
一部左サイドからコピペしたものもあり、それには(左サイド)と明記しています。


/updates/concrete5.7.0.1/concrete/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Proxy/SessionHandlerProxy.php
77. return (bool) $this->handler->write($sessionId, $data);


Whoops\Run handleError(左サイド)
<#unknown> :0

(上の2つが2回)

/updates/concrete5.7.0.1/concrete/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/NativeSessionStorage.php
213. session_write_close();

/updates/concrete5.7.0.1/concrete/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Session.php
175. return $this->storage->regenerate($destroy, $lifetime);

/updates/concrete5.7.0.1/concrete/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Session.php
167. return $this->migrate(true, $lifetime);

/updates/concrete5.7.0.1/concrete/src/Support/Facade/Facade.php
110. return $instance->$method();

/updates/concrete5.7.0.1/concrete/src/User/User.php
369. Session::invalidate();
(2回)

/updates/concrete5.7.0.1/concrete/controllers/single_page/login.php
340. $u->logout();

Concrete\Controller\SinglePage\Login logout(左サイド)
<#unknown>0

/updates/concrete5.7.0.1/concrete/src/Controller/AbstractController.php
149. return call_user_func_array(array($this, $action), $parameters);

/updates/concrete5.7.0.1/concrete/src/Routing/DispatcherRouteCallback.php
146. $controller->runAction($requestTask, $requestParameters);

/updates/concrete5.7.0.1/concrete/src/Application/Application.php
284. $response = $callback->execute($request);

/updates/concrete5.7.0.1/concrete/bootstrap/start.php
245. $response = $cms->dispatch($request);

/updates/concrete5.7.0.1/concrete/dispatcher.php
36. $cms = require $__DIR__ . '/bootstrap/start.php';

/concrete/bootstrap/configure.php
66. require(DIR_BASE . '/' . DIRNAME_UPDATES . '/' . $updates['core'] . '/' . DIRNAME_CORE . '/' . 'dispatcher.php');

/concrete/dispatcher.php
18. require $__DIR__ . '/bootstrap/configure.php';

/index.php
2. require('concrete/dispatcher.php');
 

Re: ローカル環境でログアウトすると「予期せぬエラー」

2014年9月24日 at 12:34
右サイドの一番上のメッセージはどれですか?
 

Re: ローカル環境でログアウトすると「予期せぬエラー」

2014年9月26日 at 4:35
右サイドの一番上は

Whoops \ Exception \ ErrorException (E_WARNING)
SessionHandler::write(): Parent session handler is not open

/updates/concrete5.7.0.1/concrete/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Proxy/SessionHandlerProxy.php
77. return (bool) $this->handler->write($sessionId, $data);

です。
 

Re: ローカル環境でログアウトすると「予期せぬエラー」

2014年9月26日 at 7:45
ググってみたらこれがヒットしました

SessionHandler::write(): Parent session handler is not open
http://stackoverflow.com/questions/18381544/sessionhandlerwrite-parent-session-handler-is-not-open

PHP自体のバグらしいです。5.4.xを使っている場合は、5.4.11以上にアップデートした方がいいみたいです。MAMPのバージョンが古いかな?
 

Re: ローカル環境でログアウトすると「予期せぬエラー」

2014年9月26日 at 12:52
hissyさん、ありがとうございます。なるほど、PHPのバグだったのですね。
ちょうどMAMPのアップグレードか、他のローカル環境構築を考えていたところでした。
(ちなみに、現在のMAMPのPHPのバージョンは5.4.4)
とりあえずMAMPのアップグレードを試してみます。ありがとうございました!