※以前noteに書いた内容と同様のものになります。
個人サイトに「ConcreteCMS(旧Concrete5)」という(wordpressに比べると)ややマイナーなシステムを使っている私です。
「ConcreteCMS、クセは強いけど割とやりたいこと出来ておすすめなんだぜ!!」はなんかまたそのうち書くとして、今回はバージョンアップデートに四苦八苦したのでその記録をしていこうと思います。
なんせ日本語の情報サイトが少ないんでね……少しでも助けになったらいいなという気持ちです。
※今回のアップデート作業ではファイルマネージャーを使用してデータを削除したりFTPソフトでアップロードしたりの作業をしています。当記事を参考にした場合の誤データ削除等の責任は負えませんのでバックアップの作成はもちろん、作業は慎重に!!
アプデ前環境
▶使用サーバー
エックスサーバー(スタンダードプラン)
▶アップデート前のConcreteCMSバージョン
9.3.2(今回のサイトはこれで初アプデ)
アップデートをしよう!
⚠️この記事の内容は2025年2月現在の情報をもとに作成されています⚠️
今後のアップデートなどにより操作方法などが変わることがありますのでご了承ください。また、繰り返しになりますがこの記事を参考にアップデート作業をした際に不具合やデータの消失等の責任は一切負えませんので全て自己責任にて作業を行っていただきますようお願いいたします。
ことのはじまり(トラブル発生)
Concreteには大変有難いことにサイトの管理画面からできるサーバーのファイルデータをいじらなくてもアップデートが可能な機能がついている。が!! ダウンロードボタンを押しても「フンチャラカンチャラ/update ディレクトリーがすでに存在しています。このアイテムはすでにインストールされているかもしれません」という赤いエラー文字がデデンと表示される。 ファイルマネージャを開いてupdateフォルダを覗いてみるも、中身はカラ。なので当然インストールしようにもできない。どうせえっちゅうんじゃ!!
もしかして不具合だったんですか?
9.3.3のリリースノートのバグ修正にこんな一文があります。
エラーを修正しました:リモート・アップデータがスローされます:「ディレクトリ %s は既に存在します。リモート・アップデータを実行しようとすると、”この項目は既にインストールされています。出典:9.3.3リリースノート バグ修正項目より
これじゃない???もしかしなくても、これなんじゃない??
コイツのせいで9.3.9が出てる今(2025年2月)も9.3.2のまま止まってたんじゃない?!
というわけで、原因がはっきりしたので戦いの始まりです。
やるぞ、手動アップデート
参考資料
まず、参考にさせて頂いたヘルプページのご案内。
https://concrete5-japan.org/help/5-7/developer/installation/upgrading-concrete5
ここを参考にしつつ、作業をすることにします。
多分慣れてる人なら「なーんだ管理画面からの更新はできないのね。オッケーこのヘルプの通りやるわ」で終わります。やっちまってください。
この記事も当然のようにこのヘルプページ通りに進めるのでそんなに中身のある話は無いです。ヘルプページより若干フレンドリーなくらいです。
それじゃあさくっと始めて行きましょう。
STEP1
バックアップをとる(超重要)
どんなサーバー使ってても同じです絶対取ってくださいバックアップ。
この先の作業でファイルを消します。バックアップ無いと戻せません。何かあった時再起不能になる可能性もゼロじゃないので絶対に取ってください。
あと、それなりに時間がかかるので訪問者が多いサイトはメンテのお知らせを出す事もお忘れなく。
STEP2
最新バージョンをダウンロードする
https://concrete5-japan.org/about/download
ここからダウンロードできます。
1番上にあるURLへ行き、最新バージョン(あるいはアップデートしたいバージョン)を選んでファイルをダウンロードしてください。
ダウンロードが完了したら、任意の場所でzipを解凍しておきます。見つけやすいところがいいと思います。
STEP3
いらないものを消していく
怒涛の削除作業の始まりです。
まずはダウンロードした最新版のConcrete。
ここから「concrete」という名前のフォルダ以外を全て削除してしまいます。今回使うのはconcreteフォルダ内のデータのみです。
次に、サーバー内のデータです。
バックアップは取りましたね?!大丈夫ですね?!
サーバー管理ページのファイルマネージャー等からサイトデータにアクセスします。
その中に「concrete」という名前のフォルダがあるはずなので、それを探し出します。
私の環境の場合ですが、「ドメイン名/public_html」というフォルダ内に格納されていました。
見つけられたらconcreteフォルダの中身を全て削除します。
次に、concreteフォルダと同じ階層に「updates」というフォルダも存在するはずですので、その中身も同様にすべて削除します。
もし 「application/config/update.php」という ファイルが存在する場合、こちらも削除してください。
STEP4
サーバーにファイルをアップロードする
ダウンロードして中身を整理した最新版のconcreteフォルダの中身をサーバーのconcreteフォルダの中にFTPソフトを使用してすべてアップロードします。
量が非常に多いため環境にもよりますが、そこそこの時間がかかります。
途中でエラーになったりする可能性もあるのでパソコンがスリープモードに入らないように気を付けつつ、映画や漫画やゲームなどで時間をつぶして待ってください。翌日の予定が詰まっていなければ夜中にやるのもいいのではないでしょうか。
STEP5
サイトにアクセスしてみる
問題なくファイルアップロードが完了したら確認の時間です。
サイトにアクセスし、問題なく動いているかを確認してみてください。
管理画面→システムと設定→Concreteをアップデート→更新を適用
の順でアクセスし、現バージョンが今回インストールしたバージョンになっているかを確認するのもお忘れなく!
ここがインストールしたバージョンになっていればお疲れさまでした、アップデート作業は完了です!!
おわりに
とまぁこんな感じで今回ConcreteCMSの手動アップデートに挑戦した私の備忘録日記は終わりとなります。
アップロードにめちゃくちゃ時間がかかり、果ては最初にアップロードする場所を間違える(updatesフォルダにアップした)という説明を何も読んでいないミスをしたりもしましたが無事完了しました。
正直、アップデートエラーの表示からどうしたらいいのかという情報に行き着くのに本当に時間がかかり、「もしかしてこれは内部データをいじる知識が無いと手に負えないのでは……」とさえ思っていました。
結果としては手動アップデートであっさり解決したわけなのですが、もし同じような症状で困っている人がいたら「大丈夫!!こうすればイケたから試してみて!!」と背中を押したいなと思います。
ConcreteCMS、慣れれば使いやすいのですが欲しい情報にたどり着くのに知識が無いと本当に厳しい。もったいない!!
ので、少しでも嚙み砕いた情報の一助になれば幸いです。
※コメントは最大500文字、5回まで送信できます