本日index以外アクセスできなくなりました。
管理画面もアクセスできません。
https://www.km-co.jp
原因は何でしょうか。
よろしくお願い申し上げます。
デバッグモードにして、下記のようなコードが出ました。
よろしくお願い申し上げます。
[ Notice (8)](javascript:void(0);): compact(): Undefined variable: etagMatches [ CORE/Cake/Network/CakeResponse.php , line 1171 ]
[ Notice (8)](javascript:void(0);): compact() [<a href=‘http://php.net/function.compact’>function.compact</a>]: Undefined variable: timeMatches [ CORE/Cake/Network/CakeResponse.php , line 1171 ]
エラーログ
2019-05-13 09:00:13 Error: Fatal Error (1): Allowed memory size of 536870912 bytes exhausted (tried to allocate 90827456 bytes) in [/home/virtual/www/lib/Cake/Utility/Debugger.php, line 550]
2019-05-13 09:00:13 Error: [FatalErrorException] Allowed memory size of 536870912 bytes exhausted (tried to allocate 90827456 bytes)
Request URL: /
Stack Trace:
#0 /home/virtual/www/lib/Cake/Error/ErrorHandler.php(212): ErrorHandler::handleFatalError(1, ‘Allowed memory …’, ‘/home/virtual/ww…’, 550)
#1 /home/virtual/www/lib/Cake/Core/App.php(970): ErrorHandler::handleError(1, ‘Allowed memory …’, ‘/home/virtual/ww…’, 550, Array)
#2 /home/virtual/www/lib/Cake/Core/App.php(943): App::_checkFatalError()
#3 [internal function]: App::shutdown()
#4 {main}
こんにちは!
エラーを調べてみましたが、PHP 7.3において起こるCakePHPの問題である可能性が高そうです。最近PHPのバージョンアップをされなかったでしょうか?
CakePHPを最新版にバージョンアップすることで解決できますが、baserCMSがまだ追従できていないようですので、ひとまずは以下のコードを適用することで解決してみてください。
lib/Cake/Model/Datasource/CakeSession.php 572行目
if (empty($_SESSION)) {
if (!empty($sessionConfig['ini']) && is_array($sessionConfig['ini'])) {
foreach ($sessionConfig['ini'] as $setting => $value) {
if ($setting === 'session.save_handler') {
continue;
}
if (ini_set($setting, $value) === false) {
throw new CakeSessionException(__d('cake_dev', 'Unable to configure the session, setting %s failed.', $setting));
}
lib/Cake/Network/CakeResponse.php 1168行目
if ($modifiedSince) {
$timeMatches = strtotime($this->modified()) === strtotime($modifiedSince);
}
if (!isset($etagMatches, $timeMatches)) {
return false;
}
$checks = compact('etagMatches', 'timeMatches');
if (empty($checks)) {
return false;
ご連絡ありがとうございます。
今現在PHP7.2.17です、最近変更していません。
Baser、Cakeも触っていません。
教えて頂いた通りに編集しても改善されていません。
下記の追加内容で間違いないと思います。
lib/Cake/Model/Datasource/CakeSession.php
if ($setting === ‘session.save_handler’) {
continue;
}
lib/Cake/Network/CakeResponse.php
if (!isset($etagMatches, $timeMatches)) {
return false;
}
でも、デバッグモードにして、HPにはエラーが消えました。
app/tmp/logs
debug.log
2019-05-13 12:48:18 Notice: Notice (8): compact() [function.compact]: Undefined variable: subject in [/home/virtual/www/lib/Cake/Utility/ObjectCollection.php, line 128]
よろしくお願い申し上げます。
PHP 7.3の問題ではなかったのですね。
あと怪しいのは.htaccessの設定やindex.phpの中身などでしょうか。
一度こちらの雛形に基づいて動作環境を教えていただけないでしょうか。
https://forum.basercms.net/t/topic/23
また、本番サイトでデバッグモードを有効にするのはセキュリティの観点などからおすすめしません。
デバッグを無効にしました。
ありがとうございます。
■ BaserCMSのバージョン:4.1.7
■ レンタルサーバー名:さくらインターネット レンタルサーバー
■ 設置フォルダ: [ドキュメントルート ]
サブフォルダのテスト環境は正常に動作しています。
■ 利用しているデータベース: [MySQL]
■ PHPスキル(自己評価): [ C / D]
.htaccess
index.phpは初期のままです、お願いいたします。
Manhoo_Kskb さんが変更を加えたことが原因ではなく、急にエラーが出るようになったということでしょうか。
そうすると、サーバー側でなにか変更が入ったことが考えられます。
お使いになっているサーバー会社のお知らせをチェックしてみてください。
また、ビジネスにお使いになっているサイトのようですし、お金をかけての解決もご検討ください。
ご連絡ありがとうございます。
何も変更せず、急にエラーが出ました。
サーバー会社に確認してみます。
頂いた制作会社をご検討いたします。