5.4.0.5からのアップグレード

2012年3月22日 at 18:56

5.4.0.5から最新版へのアップグレードを手動で行なっています。
サーバはXserverです。
phpは5.3.3
MySQLは5.0.77
です。
サブドメインで利用しています。

http://concrete5-japan.org/help/install/how_to_upgrade/
の手動アップグレードの手順で最新版のダウンロード、FTPでのアップ、権限の設定まで完了しました。
アップグレードページにアクセスをすると
Fatal error: Call to undefined method User::getUserDefaultLanguage() in /・・・/public_html/concrete5/concrete/config/localization.php on line 7
と出ます。
7行目というところまではわかりますが、phpが読めないのでどうしたらよいかわかりません。


どうしたらよいか回答をお願いします。

タグ:

Re: 5.4.0.5からのアップグレード

2012年3月22日 at 19:42
おそらくですが・・・

■ アップグレードのページ
http://concrete5-japan.org/help/install/how_to_upgrade/
の赤い文字に書かれているとおり、先ず最初に 5.4.2.2 にアップグレードする必要があります。

■ ダウンロードページ
http://concrete5-japan.org/about/download/

の下の方に「concrete5 過去バージョン」へのリンクがありますので、それより 5.4.2.2 へのアップグレードを先ず最初にお願いしたいと思います。
 

Re: 5.4.0.5からのアップグレード

2012年3月23日 at 10:41
ありがとうございます。

それは/concrete/内と/languages/内を再度5.4.2.2のファイルで上書きという事で良いでしょうか?

上記フォルダ内を再度上書きしてみましたが、
同じエラーが出てしまいます。
エラーはどこへ(ログイン画面など)アクセスをしても同じものが出ます。

よろしくお願いします
 

Re: 5.4.0.5からのアップグレード

2012年3月23日 at 12:43
5.4.0.5 からのアップグレードは
/updates フォルダ内に 新しいバージョンのconcrete5のファイルを一式アップして行います。
/concreteフォルダに上書きコピーはしません。
/config/site.php に DIRNAME_APP_UPDATED が定義されていれば
/updatesフォルダ内を見に行きますので、トラブルの原因になるかもしれません。

http://concrete5-japan.org/help/install/how_to_upgrade/

うまく説明できず すみません。。。。。
 

Re: 5.4.0.5からのアップグレード

2012年3月23日 at 11:00
ここにアクセスしてみるとどうですか?

http://【concrete5のURL】/index.php/tools/required/upgrade.php
 

Re: 5.4.0.5からのアップグレード

2012年3月23日 at 11:29
意味はよくわかりませんが、
http://www.concrete5.org/community/forums/installation/upgrading-from-5-4-1-1-solved/
を参考にコメント化したら英語表示で動作しました。
「upgrade」ボタンが表示され、管理画面にログインはできました。
管理画面内には5.4.2.2と表示されています。
はじめに5.5.1へアップグレードしようとしてFTPでアップしたファイルがどれかわからず削除をしていないため、サーバ上にまだ残ったままです。それが原因かわかりませんが、ところどころ画面が白くなるところもあります。

質問時のエラーにgetUserDefaultLanguage
とあるので、/language/内を見るとja_JPとja_JP.UTF8のフォルダがあります。
これは関係ないのでしょうか?

このまま5.4.2.2でエラーがないか確認をしていくのと、5.5.1へアップグレードをしてひと通り確認をするのとどちらがよいでしょうか?


よろしくお願いします
 

Re: 5.4.0.5からのアップグレード

2012年3月23日 at 15:07
うーん。

http://【concrete5のURL】/index.php/tools/required/upgrade.php

とは【concrete5のURL】の部分を、自分の concrete5 サイトのURL に置き換えて、アクセスするということでした。

そのアドレス以外にアクセスするとエラーが出ます。

本家フォーラムのアップグレードのやり方は、ちょっとだけまずいです。

5.4.0.5 からのアップグレードで、日本語特有のアップグレードを行なっているのですが、それが正常に行われていない可能性がありますが、「レイアウト機能」を使っていなかったら大丈夫です。

レイアウト機能を使っていた場合、バックアップしたファイルを一旦戻して、再びアップグレード作業をしていただかないと不具合が出るかもしれません。

また、ページの一部分が英語のままである可能性があります。

それで構わないのであれば、5.5.x へのアップグレードをされても問題はありません。
 

Re: 5.4.0.5からのアップグレード

2012年3月23日 at 18:05
説明不足で申し訳ないです。

先ほどのリンク先の詳細がよくわからず…という事です。
katzさんの説明は理解して出来ました。
あのリンク先は7行目のエラーの対応方法を探していて見つかったものでそれを試してみました。
そうしたらアップグレードページでエラーが表示されなくなり、文言が英文で表示され、[upgrade](←英語です)ボタンを押しました。
管理画面内は英語と日本語となっています。
他に管理画面内のボタンを押しても飛ばないところもあります。

現在の対処をしていくよりは、いったん元に戻す方がかんたんで早い感じでしょうか?

よろしくお願いします
 

Re: 5.4.0.5からのアップグレード

2012年3月24日 at 0:00
管理画面のボタンを押しても飛ばないというのは気になりますね。
文面から推測すると /updatesフォルダを使用されていないのでないかと思います。(間違っていたらごめんなさい。) いったん5.4.0.5に戻して、/updatesフォルダを使用してアップグレードしてみてはどうでしょうか?
 

Re: 5.4.0.5からのアップグレード

2012年3月24日 at 7:44
aclissさん
英語表示になっていて設定だったかのaccessのタブで飛ばないのでメンテナンスモードの解除ができませんでした。
 

Re: 5.4.0.5からのアップグレード

2012年3月24日 at 4:31
Acliss さん、もしかしたら、その /updates/ フォルダーのアップグレード方法、記述していないような気がする orz
 

Re: 5.4.0.5からのアップグレード

2012年3月24日 at 11:19
ほんとですね。5.4.0.5からのアップグレードはconcreteフォルダを上書きするようになっています。
日曜日にでもとりあえず文章だけ書きます。
 

Re: 5.4.0.5からのアップグレード

2012年3月23日 at 20:23
なるほど・・・。うーん。

今、本業が忙しいのでゆっくり調べれませんが、レイアウト機能を使っていなくて、部分部分が英語になってしまうのが大丈夫であれば、そのまま進めていただいて構いません。

場合によっては英語が日本語に戻る時がありますから・・・。
 

Re: 5.4.0.5からのアップグレード

2012年3月24日 at 7:41
katzさん aclissさん
ありがとうございます。

いったん戻して作業するのが今後や気持ち的に安心できそうなので、そちらでやり直してみようと思います。
 

Re: Re: 5.4.0.5からのアップグレード

2012年3月24日 at 8:01
5.4.0.5に戻されたあと5.4.2.2へのアップグレード方法は

concrete5.4.2.2.jaをダウンロード
解凍後/updatesフォルダにconcrete5.4.2.2.ja のフォルダごとアップロードしてください。

そうすると「管理画面」->「システム&メンテナンス」->「更新タブ」からアップグレードできます。
 

Re: 5.4.0.5からのアップグレード

2012年3月24日 at 14:11
木下です。

エラー自体は 「getUserDefaultLanguage という関数が無い。」
ということなのですが、これらの関数が定義されているファイルが
OverRideされている可能性があります。

/concrete 配下ではなく
/ 直下に色々とカスタマイズを行ったファイルを設置されていませんか?
一度それらのファイルをFTPで取得しバックアップとして確保したあとで
サーバー上のファイルは一旦削除してみるのも良いかもしれません。
 

Re: 5.4.0.5からのアップグレード

2012年3月24日 at 14:19
木下です。

getUserDefaultLanguage は
/concrete/models/user.php で定義されているので

カスタマイズのためにオーバーライドされているとすると
/models/user.php
が存在している可能性があります。

これを一旦削除するとUpdateできる可能性がありますが
user.php に施されたカスタマイズが無効になるので
必要性を検討してください。

施されていたカスタマイズが今後も必要な場合には
5.5対応に修正する必要があると思います。
 

Re: 5.4.0.5からのアップグレード

2012年3月26日 at 10:31
ありがとうございます。

一度試してみます。