汎用のクラウドサーバーサービスを利用する方法
まず、一般的なクラウドサーバーサービス上に Drupal サイトを構築する方法があります。この種のサービスとして、たとえば次のようなものが挙げられます。
- Amazon Web Service(AWS)の EC2
- Microsoft Azure
- Google Cloud Platform(GCP)
- IBM Bluemix Infrastructure(旧 SoftLayer)
- さくらのクラウド
これらは、CPU やネットワークといったサーバーインフラをサービスとして提供するものなので、その上で稼働するアプリケーション環境は基本的に自分で構築する必要があります。ただし、Drupal のような非常にメジャーなアプリケーションでは、導入に必要な情報や、最初から導入された状態でサーバーを立ち上げるオプションなどを用意しているサービスも増えています。例を挙げます。
AWSへのDrupal導入情報
- Amazon Lightsail で Drupal インスタンスを起動する
- 外部 Amazon RDS データベースを使用して高可用性の Drupal ウェブサイトを Elastic Beanstalk にデプロイする
Google Cloud への Drupal 導入情報
Azure への Drupal 導入情報
さくらのクラウドへのDrupal導入情報
こうした情報を利用することで Drupal サイトを構築できますが、それぞれのサービスや Drupal 自体のインストールに関して一定の知識やスキルは必要になります。また、そのサービス上でサイトを運営することが前提の選択肢になるでしょう。
Drupal 専用のサービスを利用する方法
インフラに加えて、Drupal を動かすための LAMP スタックと Drupal をセットにして、すぐに使える環境を提供するサービスもあります。こうしたサービスでは環境が最初から Drupal に最適化されているほか、開発や運用に関するサポートも用意されているものが多く、環境のメンテナンス全体をアウトソースする場合の選択肢となります。具体例をいくつか紹介します。
Acquia Cloud
Acquia は、Drupal の創始者である Dries Buytaert 氏が共同設立者であり CTO を務める企業です。Acquia Cloud は、Drupal に最適化された同社のクラウドサービスで、種々の開発支援ツールや高度な信頼性を特徴とします。詳しくは、Acquia 社のサイトを参照してください。
https://www.acquia.com/products/acquia-cloud-platform
Pantheon
Pantheon は、第1回で紹介した DeanSpace の Zack Rosen 氏が仲間と設立した会社です。AWS 上で Drupal と Wordpress に特化したホスティングサービスを提供しています。Pantheon のサービスは、最初から開発用のサイトとステージング用のサイトが用意されるなど、開発者指向である点が特徴です。
simplytest.me
上の2つとは少し趣旨の異なるサービスで、Drupalのコアや、拡張モジュールやテーマをテストするためのサンドボックス環境です。特定バージョンのコアのほか、モジュールやテーマ本格的に使用する前に、試しに入れて動かしてみることができます。
詳しい使い方は「とりあえず Drupal を触ってみたい方必見。サーバー設定不要で Drupal を試す方法」を参照してください。
永続的に運用するサイトには使えませんが、試用やテスト、デモなどに利用するには非常に使い勝手の良いサービスです。24 時間以内で終わるチュートリアル用の環境としても役立つでしょう。patrickd 氏が開発した無料のサービスですが、気に入った場合は open collective を通じて寄付も受け付けています。
一般的なレンタルサーバーを利用する方法
一般的なレンタルサーバーは PHP や Apache やデータベースがインストールされた状態でサービスが提供され、その上に 様々なサイトを構築することが可能です。Drupal の動作確認を明示するサーバーも増えてきました。Drupal の稼働実績があるサーバーとして、例えば次のようなものがありますが、いずれも現時点では Drupal 8 までの実績です。またこれらのレンタルサーバーは汎用のクラウドサーバーとは異なり、OS やミドルウェアのバージョンアップは通常サーバー会社が管理するため、動作する Drupal のバージョンに制約が発生する場合があります。
エックスサーバー
動作確認済みプログラムとして現在は Drupal 8 までとなっています。
https://www.xserver.ne.jp/manual/man_install_outside_program.php
特別な設定は不要で、同サーバーのマニュアルに従って Drupal サイト用のデータベースを用意しておけば、あとはローカル環境とほぼ同様の手順でインストールできます。
さくらのレンタルサーバー
利用者が多いこともあり、Drupal のインストールに関する情報も多く発信されているレンタルサーバーです。ただし、このサーバーは、Drupal 標準の .htaccess で使用されている Options という指定が禁止されており、"500 Internal Server Error" というエラーが発生するため、この指定を無効にした専用の .htaccess に差し替える必要があります。Drupal を動かすにはやや手間のかかるサーバーですが、情報は豊富に見つかります。
CPI
CPI は、Drupal を含む CMS ツールのインストーラを提供するレンタルサーバーとしても知られています。CPI サーバーに Drupal をインストールする手順については、ANNAI マガジンでも紹介していますので、参考にしてください。 記事では Drupal 8 を扱っていますが、Drupal 9 でも手順は変わりません。
https://annai.co.jp/article/d8-install-cpi
その他
Drupal の動作が確認されているサーバーは他にも多数あります。基本的には、Apache、MySQL、PHP が使えれば動作しますが、バージョンの制約もあるので、Drupal の使用を目的にサーバーを選択する場合は注意が必要です。なお、Drupal の動作を標榜してインストール手順を掲載しているレンタルサーバーの中にも、想定している Drupal のバージョンが古いものや、個人サイトを国内の公式サイトのように誤解して掲載しているものもあります。こうしたサーバーは前提としてしている情報が古かったり不正確な可能性があるので、使うのは避けた方が無難でしょう。
なお、本格的に Drupal を使う場合は Drush というコマンドラインユーティリティの利用が欠かせません。Web サイトとしては動作しても、コマンドラインの PHP のバージョンが合わずに Drush が正常に動作しなかったり、それ以前に SSH が使えないケースもあるので、Drupal サイトを運用する前提の場合は、そうした点も考慮する必要があります。
今回紹介した 3 つの方法の特徴と前提スキルをまとめます。それぞれの状況に応じて、最適な方法を選択するための参考にしてください。
方法 | 特徴 | 前提スキル |
---|---|---|
汎用のクラウドサービス | サーバーのインフラをアウトソースすることが目的なので、Drupal サイトの導入自体は自分で行う必要がある。 | Drupal の導入スキル 各クラウドサービスの利用スキル |
Drupal専用のサービス | 稼働に必要なインフラ整備から Drupal サイトの導入・立上げまでが自動化される。 | インストール済み Drupal サイトを扱うスキル(ただし、開発環境として使う場合は当然 Drupal 開発に関する知識全般が必要) |
レンタルサーバー | 共用サーバー上でサイトをホストすることでサーバーの運用管理をアウトソースすることが目的なので、Drupal サイトの導入自体は自分で行う必要がある。 | Drupal の導入スキル 各レンタルサーバーの利用スキル |
方法 | メリット | デメリット |
---|---|---|
汎用のクラウドサービス | 全てを自分で管理できるため、システム構成を柔軟に変更可能。 例えば、Drupal とWordPress を 1 つのクラウドサービスでホスティングするなど。 | PHP、Apache、MySQL などのミドルウェアの設定とセキュリティー更新は自身で行う必要がある。 |
Drupal専用のサービス | PHP、Apache、MySQL などのミドルウェアの設定とセキュリティー更新が自動で行われる。 Drupal のインストールが自動で行われる。 Drupal のセキュリティ更新を自動的に通知してくれる (契約内容による)。 | 各サービスに依存した設定がされるケースがあり、他のサービスへの移行が難しい場合がある。 |
レンタルサーバー | コストが安い。 PHP、Apache、MySQL などのミドルウェアの設定とセキュリティ更新が自動で行われる。 日本語の情報が豊富。 | 各レンタルサーバーの事情に合わせて .htaccess などの設定を変更する必要がある。 ミドルウェアのバージョンによっては Drupal の特定のバージョンが正常に動かないケースがある。 |
以上、前回と今回に分けて、Drupal をインストールして使えるようにするところまでの方法を紹介しました。次回からはいよいよ、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 をもっと知りたい方に向けた各種情報