Pantheonは簡単にDrupalのサイトを公開できる非常に便利なサービスです。
私達が執筆した書籍「Drupal 8 スタートブック」でも、サイト構築にはPantheonを利用しています。
しかし、Pantheonで構築したDrupal 8のサイトをローカル環境や別のサーバーに移動するには、 terminus というPantheon専用のCLIを使って hash_salt という値を取得する必要があります。
https://pantheon.io/docs/settings-php/
これは開発者以外の方には少し難しい方法です。
そこで、Drupalのサイト上に hash_salt の値を表示するモジュール 「hash_salt_helper」 を作成してgithubに公開しました。
https://github.com/annai-inc/hash_salt_helper
このモジュールを使って、Pantheon上で構築したサイトをローカル環境や別のサーバーに移動する方法をご紹介します。
Pantheonのダッシュボードでの作業
1. Pantheonのダッシュボードにログインします。
2. 「Backups」に進み、「create new backup」ボタンを押して新しいバックアップを作成します。
3. 作成されたCode, Database, Filesのバックアップをダウンロードします。
Pantheonでのバックアップ作成方法については以下を参考にしてください。
https://pantheon.io/docs/create-backups/#create-a-backup
4. 「Code」に進み、「Connection Mode」 を 「SFTP」に変更します。
Connection modeの変更については以下を参考にしてください。
https://pantheon.io/docs/sftp/#sftp-mode
Drupal上での作業
ここからはPantheon上に作成したDrupalサイト上での作業となります。
5. Update Managerモジュールを有効にします。
6. https://github.com/annai-inc/hash_salt_helper にアクセスし、「release」 -> 「8.x-1.0」 に進み 「Source code (tar.gz)」をダウンロードします。
7. 「管理」 -> 「機能拡張」 -> 「新しいモジュールをインストール」に進み、6.でダウンロードしたファイルをアップロードします。
8. 「管理」 -> 「環境設定」 -> 「開発」 -> 「Show Hash salt」に進みます。
9. ここに hash_salt を含む設定ファイルの雛形が表示されるので、settings.local.php という名前でファイルを新規に作成し、表示されている内容をコピーして保存します。DATABASE_NAME, USER_NAME, PASSWORD は移動先の環境側に合わせてください。
移行先環境での作業
10. Drupalが動作する環境をPCやVPS、レンタルサーバー上で構築し、3.で取得した各種バックアップを配置します。filesのバックアップは解凍すると files_{pantheonのステージ名} (例: devだと files_dev) という名前のディレクトリになるので、 files にリネームして sites/default/files として配置してください。Drupalの環境構築については、以下の記事が参考になります。
- CentOS7にDrupal 8.2.4をゼロからセットアップする(Nginx + PHP7.1 + MariaDB)
- Drupal 8をCPI ACE01サーバーにインストールする方法
- Drupalのローカル開発環境の構築方法について詳細解説
11. sites/default ディレクトリに 9. で作成した settings.local.php をコピーします。
これでPantheonで構築したサイトの移行は完了します。
関連コンテンツ
- Drupal 導入前に必ず考えたい「保守」のこと
- 手軽に本格的な Drupal のローカル開発環境を構築してみよう
- 9 つのシンプルなステップで Drupal 9 のテーマを作成してみよう
- Drupal 9: 一般的なエクスプロイトの経路をブロックする方法
- エンジニア新人研修のご紹介
- Headless CMS というトレンドに Drupal は適応している!?
- Drupal 9.1 が登場!アップグレードの準備はできていますか?
- Drupal 9 におすすめのモジュール
- State of Drupalプレゼンテーション(2021年4月)
- 第 16 回 Drupal をもっと知りたい方に向けた各種情報
Drupal 初心者講座バックナンバー
- Drupal 9/10 初心者講座
- 第 1 回 歴史に見る Drupal の DNA
- 第 2 回 Drupal はフレームワークか?CMS か?他の CMS との比較
- 第 3 回 Drupal の特徴
- 第 4 回 Drupal 9 / 10 のインストール (1)
- 第 5 回 Drupal 9 / 10 のインストール (2)
- 第 6 回 Drupal にコンテンツを投稿してみる
- 第 7 回 Drupal のボキャブラリとタクソノミーの使い方
- 第 8 回 コンテンツ管理における Drupal と他の CMS との比較
- 第 9 回 Drupal のブロックシステム
- 第 10 回 Drupal の標準クエリビルダー Views の使い方
- 第 11 回 Drupal と他の CMS のクエリビルダー機能を比較
- 第 12 回 Drupal の多言語機能と他の CMS やサービスとの比較
- 第 13 回 Drupal の権限設定と WordPress や Movable Type との比較
- 第 14 回 Drupal のテーマシステムについて
- 第 15 回 Drupal の拡張モジュールの選定と使い方
- 第 16 回 Drupal をもっと知りたい方に向けた各種情報