Drupalの更新について

以下の2つの翻訳書データベースは、DrupalというCMS(コンテンツ・マネジメント・システム。特に有名なのはWordpressですね)を使って作っています。

Drupalはデータベースを作成するのに向いているCMSで、柔軟にデータが扱えるという利点があるのですが、Wordpressと比較するとアップデートが難しいのが難点で、私も過去に何度か失敗しています。ですが、セキュリティのこともあり、警告を無視し続ける訳にもいかないので、失敗したら最悪再インストールとデータ再入力をする覚悟で、最新の9.3.6にアップデートしました。

ところが今回は「さくらのインターネットサーバー」の「ファイルマネージャー」をなるべく使うようにしたところ、すべてGUIの操作でスムーズにできたので、次回アップデート時に役立つよう、メモ代わりに手順を記録しておきたいと思います。環境によってはうまくいかない可能性もありますので、あくまで参考ということで。うまくいかない場合は他のサイト(Web Go!Go!など)をご参照ください。

まず、大まかな手順は以下のとおりです。
1.準備
2.ファイルの入れ替え
3.アップデート

では、細かく見ていきます。

1.準備

まずは、Drupalの管理画面から行う準備です。

(1)キャッシュのクリア

Drupal管理画面の「環境設定 > 開発 > パフォーマンス」の、「キャッシュをクリア」にある「すべてのキャッシュをクリアー」ボタンを押します。

(2)構成のエクスポート

Drupal管理画面の「環境設定 > 構成の同期」の「エクスポート」タブを開き、「エクスポート」ボタンを押します。

(3)データベースのバックアップ

さらに「Backup and Migrate」を入れてある場合は、「環境設定 > 開発 > バックアップと移動」からバックアップをとっておくと安心です。

(4)サイトをメンテナンスモードにする

次に、更新中にアクセスできないようにメンテナンスモードにします。管理画面の「環境設定 > 開発 > メンテナンスモード」で、「サイトをメンテナンスモードにする」にチェックをいれて「構成を保存」をクリック。

2.ファイルの入れ替え

ここからは、「さくらのレンタルサーバー」の「ファイルマネージャー」を使います。別のサーバーを使っている方でも、そのサーバーに同様の機能があれば同じようにできるのではないかと思います。

(1)古いファイルのバックアップ

これまで使用してきたファイルを削除する前に、アップデートがうまくいかなかった場合に備えてバックアップをとります。その簡単な方法が「ファイルマネージャー」でバックアップ用のディレクトリを作成し、Drupalインストールディレクトリ以下のすべてのファイルをそこにコピーしてしまうことです。

ファイルマネージャーで、Drupalをインストールしたディレクトリ(当サイトでは「xiyouji_jp」)を選択し、右クリックすると、「指定の場所に複製」というのがありますので、それを押してコピー先を指定します。私の場合「Backup」というディレクトリを作っておき、そこにコピーしました。

(2)古いファイルの削除

Drupalをインストールしたディレクトリ直下のファイルと、「core」「vendor」ディレクトリを削除します。

上と同じく、削除するファイルを選択後、右クリックして「削除」を押します。緊張します。

(3)新しいファイルの解凍

Drupalの管理画面に出たアップデートを促す警告を辿っていくと、公式サイトの、新しいバージョンをダウンロードできるページにたどり着きますので、そこからtar.gzファイルをダウンロードし、ftpソフト(FFFTPなど)でサーバー上に置きます(ファイルマネージャーはアップロードできるファイルのサイズに制限があり、Drupalはこれに引っかかるので)。私は上の「Backup」ディレクトリに置きました。アップロードしたら解凍します(右クリック→「リモートで解凍」)。

(4)新しいファイルの配置

解凍してできたディレクトリの中身を、全てDrupalインストールディレクトリにコピーします。(1)と同じく、「指定の場所に複製」を使います。

(5)古いファイルの一部を戻す

アップグレード前に、次のファイルの内容を書き換えていた場合、バックアップからインストールディレクトリコピーします。

  • .htaccess
  • robots.txt
  • template.phpやstyle.cssなどコアテーマに関連するファイル

アップデート

(1)update.phpの実行

管理アカウントでログインした状態でDrupalサイトのトップページに行き、ブラウザのURLの末尾(“/”の後)に「update.php」と入力し、Enterキーを押します。アップデートの画面に入りますので、指示に従います。

(2)確認

Drupal管理画面の「レポート > サイトの状態」をチェックします。エラーが無ければOKです。

(3)メンテナンスモードの解除

1の(1)同様キャッシュをクリアして、(4)と同じ管理画面の「環境設定 > 開発 > メンテナンスモード」で、今度は「サイトをメンテナンスモードにする」のチェックを外し「構成を保存」をクリックします。これでまたサイトが公開されます。

※バックアップフォルダに置いたファイルは、必要に応じて削除してください。