
Ubuntuで自分専用のWebサーバーを構築したいと考える人は多く、中でもApacheとDrupalを組み合わせることで、堅牢かつ柔軟なCMS(コンテンツ管理システム)環境を構築できます。
本記事では、初心者の方でも理解しやすいように、UbuntuにApacheとDrupalをインストールする手順を分かりやすく解説します。
Drupalと人気CMS「WordPress」の違いや、それぞれのメリット・デメリットについても解説します。
\ 2週間無料でお試しできます! /
Unix/Linux系VPSをこの価格で!
・全プランSSD搭載でコストパフォーマンス◎
・豊富なOSラインアップ
・充実の無料サポート
VPSを使ってみる
目次
Drupalとは
概要
Drupalはオープンソースで開発されているCMSの一つで、特に大規模サイトや多言語サイト、高度な権限管理が必要なプロジェクトで強みを発揮します。
モジュール(拡張機能)やテーマが豊富に提供されており、自由度の高いカスタマイズが可能です。
さらに、セキュリティ性にも優れており、政府機関や大学、国際的な企業のサイトにも採用されています。
WordPressとの違い
CMSとして最も有名なソフトウェアとしてWordPressがあります。
WordPressとDrupalの主な違いを表にまとめました。
| 項目 | WordPress | Drupal |
| 操作性 | 非常に簡単。初心者向け | やや複雑。中・上級者向け |
| 拡張性 | プラグインが豊富にある | モジュールとAPIによる高度な拡張性 |
| セキュリティ | 利用者が多いため、攻撃対象になりやすい | 個別のアクセス権限を設定できるなど、セキュリティ機能が強化されている |
| 用途 | ブログ、小〜中規模の企業サイト | 大規模サイト、多言語対応サイトなど |
WordPressは初心者でも簡単に扱えるため、ブログや小規模ビジネスサイトに適しています。
一方、Drupalは設定や開発に一定の知識が必要ですが、複雑な機能や構造を持つ大規模サイトの構築に向いています。
「簡単に始めたい」「更新を頻繁に行う」という方はWordPress、「堅牢で拡張性の高いシステムを作りたい」という方にはDrupalがおすすめです。
UbuntuをVPSで利用するなら
ミライサーバー
\ 2週間無料でお試しできます! /
VPSを使ってみる
Ubuntu 22.04へApache、Drupalインストール手順
前提条件
今回のインストール環境はミライサーバーのVPS上に構築されたUbuntu 22.04.2 LTSを使用します。
仮想マシンのスペックは以下のとおりです。
・CPU:4コア
・Memory:4GB
・Disk:SSD 300GB
※ミライサーバーではUbuntu 22.04.2 LTSなどのOSをインストールした状態からお使いいただけます。
手順1:Apacheのインストール
最初に、サーバーを最新の状態にアップデートします。
| $ sudo apt update $ sudo apt install apache2 |

アップデートの過程で、サービスの再起動を促す画面が表示されたら、「OK」を選択して進みます。

インストールが完了したら、以下のコマンドでApacheが起動しているか確認します。
「active (running)」と表示されれば、Apacheは正常に動作しています。
| $ sudo systemctl status apache2 |

ファイアウォールを使用している場合は、HTTP/HTTPS通信を許可します。
| $ sudo ufw allow ‘Apache Full’ |
以下のコマンドで設定内容を確認しておきましょう。
ファイアウォールが正しく設定されていれば、以下の画像のように表示されます。
| $ sudo ufw status |

最後に、ブラウザで「http://<サーバーのIPアドレス>」にアクセスし、以下のような初期ページが表示されていればOKです。
UbuntuをVPSで利用するなら
ミライサーバー
\ 2週間無料でお試しできます! /
VPSを使ってみる
手順2:必要なパッケージのインストール
DrupalはPHPで動作するCMSであり、データベースとしてMariaDBなどが必要です。
以下のコマンドで必要なパッケージをインストールします。
Drupal11では、PHP8.3以上が必要です。
しかし、Ubuntuの標準リポジトリではPHP8.3がないため、個別のパッケージリポジトリであるPPAをインストールします。
| $ sudo add-apt-repository ppa:ondrej/php -y $ sudo apt update |
PHPをインストールします。
ここでは、現時点の最新である8.4をインストールします。
| $ sudo apt install php8.4 php8.4-apcu php8.4-dev libapache2-mod-php libcurl4-openssl-dev php8.4-cli php8.4-mysql php8.4-zip php8.4-gd php8.4-fpm php-json php8.4-common php8.4-intl php8.4-mbstring php8.4-curl php8.4-xml php-pear php8.4-tidy php8.4-soap php8.4-bcmath php8.4-xmlrpc mariadb-server mariadb-client unzip |
先ほどと同様に、サービスの再起動を促す画面が表示されたら、「OK」を選択して進みます。
次に、PHPの拡張機能をインストールします。
以下のコマンドを実行します。
| $ sudo pecl install uploadprogress |

拡張機能のインストールが完了したら、uploadprogressの新しい設定ファイルを作成します。
| $ sudo vi /etc/php/8.4/mods-available/uploadprogress.ini ※以下の内容を記載 ; configuration for php uploadprogress module ; priority 15 extension=uploadprogress.so |

設定ファイルを有効化するため、以下のコマンドを実行します。
| $ sudo ln -s /etc/php/8.4/mods-available/uploadprogress.ini /etc/php/8.4/apache2/conf.d/15-uploadprogress.ini |
手順3:PHPの初期設定
PHPをインストールしたら、環境にあわせて設定を行います。
以下は設定例です。
| $ sudo vi /etc/php/8.4/apache2/php.ini ※以下の設定を記載 memory_limit = 512M upload_max_filesize = 50M max_execution_time = 100 date.timezone = “Asia/Tokyo” |
設定を有効にするため、Apacheを再起動します。
| $ sudo systemctl restart apache2 |
設定が正しく動作するか確認するため、以下のコマンドを実行しサンプルページを作成します。
| $ sudo vi /var/www/html/info.php ※以下の設定を記載 <?php phpinfo(); ?> |

ブラウザで「http://<サーバーのIPアドレス>/info.php」にアクセスし、以下のような初期ページが表示されていればOKです。

info.phpには詳細な環境情報が表示されるため、確認後はページを削除しましょう。
UbuntuをVPSで利用するなら
ミライサーバー
\ 2週間無料でお試しできます! /
VPSを使ってみる
手順4:データベースの初期設定
MariaDBをインストールしたら、以下を実行して基本的なセキュリティ設定を行います。
| $ sudo mysql_secure_installation |

対話形式で以下のように質問されるため、環境にあわせて設定します。
| 質問 | 意味 |
| Enter current password for root (enter for none): | 管理者アカウント(root)パスワードの設定(初回は空Enter) |
| Switch to unix_socket authentication [Y/n] | unix socket認証に切り替えるか →セキュリティを強化するため「Y」推奨 |
| Change the root password? [Y/n] | rootパスワードを変更するかどうか →必要に応じて「Y」 |
| Remove anonymous users? [Y/n] | 匿名ユーザーを削除するか →削除するため「Y」 |
| Disallow root login remotely? [Y/n] | リモートでのrootログインを禁止するか →禁止するため「Y」 |
| Remove test database and access to it? [Y/n] | testデータベースを削除するか →削除するため「Y」 |
| Reload privilege tables now? [Y/n] | 特権テーブルをリロードするか (これまで実施した変更をすぐに有効にするか) →有効にするため「Y」 |
設定が完了したら、MariaDBに接続します。
| $ sudo mysql -u root -p |

以下のコマンドを実行し、Drupal用のデータベースおよびユーザーを作成します。
ユーザー名やパスワードは、適宜変更してください。
(例)
ユーザー名:drupaluser
パスワード:password
データベース名:drupaldb
| CREATE DATABASE drupaldb; CREATE USER ‘drupaluser’@’localhost’ IDENTIFIED BY ‘password’; GRANT ALL ON drupaldb.* TO ‘drupaluser’@’localhost’ WITH GRANT OPTION; FLUSH PRIVILEGES; EXIT; |
手順5:Composerのインストール
Composerは、PHPパッケージの依存関係を管理するためのツールです。
Drupalのインストールを行うには、PHPパッケージの依存関係を満たす必要があるため、事前にComposerをインストールしておきます。
以下のコマンドを実行します。
公式サイトからComposerのインストーラーをダウンロードし、実行します。
| $ sudo curl -sS https://getcomposer.org/installer | php |

次に、ダウンロードされたComposer.pharのファイルを、システム全体でアクセスできるようにするために移動します。
| $ sudo mv composer.phar /usr/local/bin/composer |
以下のコマンドを実行し、バージョン情報やヘルプが表示されれば、インストールは成功です。
| $ composer |
手順6:Drupalのインストール
公式サイトから最新バージョンのDrupalパッケージをダウンロードします。
| $ cd /tmp $ wget https://www.drupal.org/download-latest/tar.gz -O drupal.tar.gz |
ダウンロードしたファイルを展開し、/var/www/drupal に移動させます。
移動したら、所有権と権限を変更しておきます。
| $ tar -xvf drupal.tar.gz $ sudo mv drupal-* /var/www/drupal $ sudo chown -R www-data:www-data /var/www/drupal/ $ sudo chmod -R 755 /var/www/drupal/ |
手順4 でインストールしたComposerを利用して、PHPの依存関係となるパッケージをインストールします。
| $ cd /var/www/drupal $ sudo -u www-data composer install –no-dev |

もし、以下のようなメッセージが表示された場合は、PHPのバージョンが低い可能性があります。
PHP8.3以上で実施してみてください。
手順7:Apacheの設定
最初に、Drupalに必要なApache2モジュールを有効化します。
| $ sudo a2enmod rewrite ssl headers deflate |
次に、Drupal用にバーチャルホストの設定です。
Drupal用のバーチャルホストファイルを作成します。
| $ sudo vi /etc/apache2/sites-available/drupal.conf |
以下は設定例です。
| <VirtualHost *:80> ServerAdmin [email] DocumentRoot /var/www/drupal ServerName <ドメイン名>
ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/drupal> Options FollowSymlinks AllowOverride All Require all granted
RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php [L] </Directory> </VirtualHost> |
設定が完了したら、以下のコマンドで仮想ホストファイルを有効にし、Apacheを再起動します。
| $ sudo a2enmod rewrite $ sudo a2ensite drupal.conf $ sudo systemctl restart apache2 |

ブラウザでアクセスします。以下の画面が表示されたら、インストールは問題なく完了しています。
| http://<サーバーIP> |
UbuntuをVPSで利用するなら
ミライサーバー
\ 2週間無料でお試しできます! /
VPSを使ってみる
手順8:Drupal初期設定
ブラウザでアクセスすると、Webインストール画面が表示されます。
最初に言語を選択します。

次に、インストール方法を選択します。
「標準」を選択しましょう。

Drupalデータベースの接続情報の設定です。
「手順4:データベースの初期設定」で作成したデータベースとユーザーの情報を入力します。

Drupalデータベースのインストールが完了したら、ウェブサイトの基本情報を入力します。
以下の項目を設定します。
・Webサイトの名前
・WebサイトのEmailアドレス
・管理者ユーザー名
・管理者パスワード
・管理者のEmailアドレス
・デフォルトの国
・デフォルトタイムゾーン

設定が完了すると、Webサイトの画面が表示されます。

まとめ
本記事では、Ubuntu 22.04 にDrupalを構築する手順を解説しました。
UbuntuでApacheとDrupalをインストールすることで、堅牢で拡張性の高いWebサイトを構築する土台が整います。
Drupalは高機能なCMSでありながら自由度が高く、企業や教育機関、大規模プロジェクトに適しています。
WordPressと比べると学習コストはかかりますが、要件の厳しいサイトを構築したい場合や、細かい機能制御が必要な場合には非常に有効な選択肢です。
ぜひDrupalでのサイト構築に挑戦してみてください。
ミライサーバーでは、ハイスペックなVPSや専用サーバーを低価格でご提供しています。
VPSは初期費用も無料であり、ツールの検証や動作確認にもおすすめです。
Drupalの検証にもあわせてご利用ください。
Ubuntuを利用するならミライサーバー
ミライサーバーは、アシストアップ株式会社が提供している、Unix系サーバーに特化したホスティングサービスです。
ミライサーバーのVPSでは、高速処理が可能なSSDを全プランに搭載しています。
OSは、UbuntuやDebian、AlmaLinuxなどの豊富なラインアップから選択することができます。
2週間無料トライアルを実施しておりますので、まずはお気軽にお試しください。
プランの選択でお困りの場合は、ぜひ一度お問い合わせください。
2023.08.03
VPSに申込み、SSH接続するまでの流れ【ミライサーバー】
オンラインビジネスやWebサイトの運営を始める際には、ホスティングサービスの中から自分の用途に合ったサーバー環境を利用することが一般的です。...





