5.6.3.5 から 5.6.4.0 へのアップグレードが失敗します
こちらの手順にしたがい、アップグレードを行いましたが、アップグレードに失敗します。
http://concrete5-japan.org/help/5-6/install/how_to_upgrade/
ダウンロードした 5.6.4.0 を updatesフォルダに入れて、「システムと設定」の「concrete5をアップグレード」を開くと、
「アップデートが利用可能です。以下をクリックして5.6.4.0にアップデートしてください。」
との表示が出て「更新」ボタンをクリックしました。
するとなぜか「5.6.3.5 へのアップグレードを完了しました」と、元のバージョンの完了メッセージが出ました。
「ホームに戻る」をクリックすると、下記のエラーが表示されてどこにも行けなくなります。
「予期せぬエラーが発生しました。
/app/public/updates/concrete5.6.4.0_ja/concrete/themes/xxxx/default.php」ファイルが見つかりません。すべてのテーマには「default.php」と「viewe.php」が必要です」
(xxxx はオリジナルテーマのフォルダ名)
なお、管理画面から Greek Yogurt テーマに変更するとエラーは出ません。
オリジナルテーマに変更すると上記のエラーが出ます。
(updates/concrete5.6.4.0_ja/concrete/themesフォルダは空です)
「システムと設定」から「環境情報」を見ると、「# concrete5 Version 5.6.4.0 」となっていて、「concrete5をアップグレード」を開くと「現在実行中 5.6.3.5」となっていて矛盾しています。
/config/site.php の最下行は下記のようになっています。
<?php define('DIRNAME_APP_UPDATED', 'concrete5.6.4.0.ja');?>
テストした環境は、local by flywheel です。
・Apache/2.4.10 (Debian)
・PHP 5.6.20
-----
上記問題の対応方法はありますでしょうか?
事情で concrete5.6 からアップグレードできないのですが、PHPを7にする必要があり、concrete5 を PHP 7 に対応するバージョンにしたいのです。
よろしくお願いいたします。
Re: 5.6.3.5 から 5.6.4.0 へのアップグレードが失敗します
/updates フォルダを使ったアップデートについては確認します。
もしも差し支えなければ、
/updates フォルダを使わずに
/concrete フォルダを上書きしてアップデートを試していただけますか?
1. サイトをバックアップ
2. /config/site.php の最下行 <?php define('DIRNAME_APP_UPDATED', 'concrete5.6.4.0.ja');?> を削除
3. concrete5 にログイン
4. updates/concrete5.6.4.0_ja/concrete のフォルダをそのまま /concrete フォルダに上書き移動 (旧ファイルは名称変更などで一次保持)
5. アップグレードページに直接訪問 【サイトURL】/index.php/tools/required/upgrade/
6. アップグレードを実行
以上です。
updates フォルダでアップグレードがうまく行かないという不具合は確認します。
Re: 5.6.3.5 から 5.6.4.0 へのアップグレードが失敗します
コメントいただいた手順で、5.6.4.0 へのアップグレードが成功しました。
アップグレードページにて「5.6.4.0 upgrade completed」と表示され、環境情報でも「5.6.4.0」になっており、サイト自体の動作も問題ないようです。
また、PHPを7.2にしても問題なく動作いたしました。
これはこれで正規に5.6.4.0にアップグレードされていると考えてよろしいのですよね?
今後 8 へのアップグレードを予定しており、その際に Migration Tools 等を使用して作業できれば良いと考えています。
Masahiko Kawai
Re: 5.6.3.5 から 5.6.4.0 へのアップグレードが失敗します
updates/concrete5.6.4.0_ja/concrete/themesフォルダにオリジナルテーマをコピーしたらエラーは出なくなりました。
でも本来なら themesフォルダにあるオリジナルテーマで動作するはずですよね?