Drupalインストール · 2 min read · Nov 19, 2025
Alma Linux 9にDrupalをインストールする方法

Drupalは、ウェブサイトの構築と管理に使用されるオープンソースのコンテンツ管理システム(CMS)です。その柔軟性と堅牢性で知られるDrupalは、ユーザーがコンテンツを作成・整理し、プレゼンテーションをカスタマイズし、管理タスクを自動化し、ユーザーの役割と権限を管理できるようにします。特に、数千のアドオンモジュールやテーマを通じて機能を拡張・変更できるモジュラーアーキテクチャが好まれています。Drupalは非常にスケーラブルであり、小さな個人ブログから大規模な企業や政府のウェブサイトまで適しています。強力なコミュニティサポートと包括的なドキュメントは、その使いやすさと開発の可能性をさらに高めています。
このチュートリアルでは、LAMPスタック(Linux、Apache/Httpd、MariaDB、PHP)を使用して、Alma Linux 9サーバーにDrupalをインストールする手順を案内します。その後、FirewalldとSSL証明書を使用して、CertbotとLet’s EncryptでDrupalのインストールを保護する方法を示します。
前提条件
始める前に、以下の要件を満たしていることを確認してください:
- Alma Linux 9サーバー。
- 管理者権限を持つ非ルートユーザー。
- サーバーIPアドレスにポイントされたドメイン名。
- SELinuxのステータスが許可されている。
依存関係のインストール
現在、Drupalの最新バージョンはPHP 8.3を必要とするため、サードパーティのリポジトリを介してインストールする必要があります。また、HttpdウェブサーバーやMariaDBサーバーなどの他の依存関係もインストールします。
依存関係をインストールする前に、EPELおよびRemiリポジトリをAlma Linuxサーバーに追加します。リポジトリを追加するように求められたら、yを入力します。
sudo dnf install epel-release dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpmRHELベースのディストリビューションでは、一部のパッケージはリポジトリモジュールとして提供されます。以下のコマンドでRemiリポジトリを介してPHP 8.3のリポジトリモジュールを有効にします。
sudo dnf module reset php
sudo dnf module enable php:remi-8.3
次に、以下のdnfコマンドを使用してLAMPスタック(Apache/Httpd、MariaDB、PHP)パッケージをインストールします。インストールを確認するように求められたら、yを入力します。
sudo dnf install httpd mariadb-server php php-cli php-devel php-mbstring php-gd php-xml php-curl php-mysqlnd php-pdo php-json php-opcache php-pear php-pecl-apcu php-pecl-crypto
インストールが完了したら、以下のコマンドを使用してhttpdサービスを開始し、有効にします。
sudo systemctl start httpd
sudo systemctl enable httpd次に、以下のコマンドを使用してmariadbサービスを開始し、有効にします。
sudo systemctl start mariadb
sudo systemctl enable mariadb最後に、以下のコマンドを使用してPHPのバージョンを確認します。システムにPHP 8.3がインストールされていることがわかります。
php -v
php -m
Firewalldの設定
デフォルトでは、firewalldはAlma Linuxで実行中です。HTTPおよびHTTPSプロトコルへのアクセスをfirewalldで開き、Drupalインストールへのトラフィックを許可する必要があります。
以下のコマンドを使用して、firewalldにHTTPおよびHTTPSサービスを追加します。次に、変更を適用するためにfirewalldをリロードします。
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload次に、以下のコマンドを実行してfirewalldのステータスを確認し、有効なルールをリストします。HTTPおよびHTTPSサービスがfirewalldに追加されていることがわかります。
sudo firewall-cmd --list-all
PHPの設定
このセクションでは、デフォルトの設定ファイル/etc/php.iniを編集してPHPを設定し、PECL(PHP Extension Community Library)を介して追加の拡張機能uploadprogressをインストールします。uploadprogress拡張機能はDrupalに必要ですが、PECLパッケージとしてのみ利用可能です。
以下のnanoエディタコマンドを使用してPHP設定ファイル/etc/php.iniを開きます。
sudo nano /etc/php.ini以下の設定でデフォルトの設定を変更します。memory_limitとdate.timezoneオプションを現在の環境に合わせて調整してください。
memory_limit = 512M
upload_max_filesize = 60M
max_execution_time = 300
date.timezone = Europe/Stockholm完了したら、ファイルを保存して終了します。
次に、以下のコマンドを実行してuploadprogressモジュールをシステムにインストールします。uploadprogressモジュールは、パッケージリポジトリではなくPECLリポジトリで入手可能です。
sudo pecl install uploadprogressインストールが完了すると、以下の出力が表示されます。

次に、以下のコマンドを実行してuploadprogress拡張機能を有効にするための新しい設定を作成します。
cat <PHPへの変更を適用するためにhttpdサービスを再起動します。
sudo systemctl restart httpd最後に、以下のコマンドを使用してuploadprogressモジュールを確認します。uploadprogressモジュールがPHPインストールで有効になっていることを確認してください。
php -m | grep uploadprogress
MariaDBの設定
PHPの設定が完了したら、MariaDBサーバーのインストールを設定する必要があります。コマンドラインを介してMariaDBを保護し、MariaDBクライアントを介してDrupal用の新しいデータベースとユーザーを作成します。
以下のコマンドを使用してMariaDBサーバーを保護します。
sudo mariadb-secure-installationプロセス中に、新しい設定を確認して適用するためにYを入力するか、設定を拒否するためにNを入力します。以下は、尋ねられるMariaDBの設定です:
- unix_socket認証に切り替えますか?nを入力してENTERを押します。デフォルトのMariaDBルートユーザーはすでに保護されています。オプションで、yを入力して有効にすることもできます。
- ルートパスワードを変更しますか?yを入力して新しいMariaDBルートパスワードを設定します。
- 匿名ユーザーを削除しますか?yを入力して確認します。
- リモートからのルートログインを禁止しますか?yを入力して確認します。MariaDBルートユーザーを使用している場合、ローカル接続のみが許可されます。
- テストデータベースとそのアクセスを削除しますか?yを入力して確認し、デフォルトのデータベース’test’を削除します。
- 最後に、yを再度入力してMariaDBサーバーのすべてのテーブル権限を再読み込みし、新しい変更を適用します。
以下のコマンドを使用してMariaDBサーバーにログインします。プロンプトが表示されたら、MariaDBルートパスワードを入力します。
sudo mariadb -u root -p次に、以下のクエリを実行して新しいデータベースdrupaldb、ユーザーdrupal、パスワードp4sswordを作成します。このデータベースはDrupalによって使用されるため、以下のデータベースの詳細を自分の情報に合わせて調整してください。
CREATE DATABASE drupaldb;
CREATE USER drupal@localhost IDENTIFIED BY 'p4ssword';
GRANT ALL ON drupaldb.* TO drupal@localhost WITH GRANT OPTION;
FLUSH PRIVILEGES;
次に、以下のクエリを使用してユーザーDrupalの権限を確認します。ユーザーDrupalがデータベースDrupaldbにアクセスできることがわかります。
SHOW GRANTS FOR drupal@localhost;最後に、quitと入力してMariaDBサーバーから退出します。

Drupalソースコードのダウンロード
MariaDBを設定し、データベースとユーザーを作成したので、Drupalソースコードをダウンロードし、Drupalインストール用のDocuemtRootまたはウェブルートディレクトリを設定できます。この場合、Composerを介してインストールするのではなく、wgetを使用してDrupalソースコードをダウンロードします。
/var/wwwディレクトリに移動し、以下のwgetコマンドを使用して最新のDrupalソースコードをダウンロードします。
cd /var/www/
wget https://www.drupal.org/download-latest/tar.gz -O drupal.tar.gzダウンロードが完了したら、Drupalソースコードを抽出し、抽出されたディレクトリの名前をdrupalに変更します。これにより、DrupalのDocumentRootディレクトリが/var/www/drupalで利用可能になります。
tar -xvf drupal.tar.gz
mv drupal-* drupal次に、以下のコマンドを実行して/var/www/drupalディレクトリの所有権をapacheユーザーに変更し、パーミッションを755に変更します。
sudo chown -R apache:apache /var/www/drupal/
sudo chmod -R 755 /var/www/drupal/Httpd仮想ホストの作成
このセクションでは、Drupal用の新しいHttpd仮想ホスト設定を作成します。Drupal用のドメイン名を準備していることを確認してください。ローカルまたは公開ドメイン名のいずれかです。
まず、以下のnanoエディタコマンドを使用して新しいhttpd仮想ホスト設定/etc/httpd/conf.d/drupal.confを作成します。
sudo nano /etc/httpd/conf.d/drupal.conf以下の設定を挿入し、ServerNameオプションを自分のドメイン名に変更してください。
ServerName howtoforge.local
ServerAdmin [email protected]
DocumentRoot /var/www/drupal
ErrorLog /var/log/httpd/howtoforge.local.error.log
CustomLog /var/log/httpd/howtoforge.local.access.log combined
Options FollowSymlinks
#Allow .htaccess
AllowOverride All
Require all granted
SecRuleEngine Off
# または問題のあるルールのみを無効にします
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
ファイルを保存して、完了したらエディタを終了します。
次に、以下のコマンドを実行してhttpd設定を確認します。出力にSyntax OKが表示され、正しいhttpd構文が確認されます。
sudo apachectl configtest最後に、以下のコマンドを使用してhttpdを再起動し、新しい仮想ホストの変更を適用します。
sudo systemctl restart httpd
Certbotを使用したHTTPSの設定
このセクションでは、CertbotとLetsencryptを介してDrupalのHTTPSを設定します。公開ドメインを使用している場合はこれを行い、ローカルドメインの場合は自己署名証明書を生成できます。
以下のコマンドを使用してCertbotとCertbot Apacheプラグインをインストールします。インストールを確認するためにyを入力します。
sudo dnf install certbot python3-certbot-apacheインストールが完了したら、以下のcertbotコマンドを使用してDrupalインストール用のSSL/TLS証明書を生成します。ドメイン名とメールアドレスを自分の情報に変更してください。
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d howtoforge.localプロセスが完了すると、SSL/TLS証明書は/etc/letsencrypt/live/domain.comディレクトリに利用可能になります。また、Drupalインストールは自動的にHTTPSで設定されます。
Drupalのインストール
ウェブブラウザを開き、https://howtoforge.local/のようなDrupalインストールドメイン名にアクセスします。
希望の言語を選択し、保存して続行ボタンをクリックします。

インストールプロファイルでは、初めてDrupalをインストールする場合はStandardを選択し、保存して続行をクリックします。

システムチェックが完了すると、Drupalのデータベース設定が表示されます。MariaDBデータベース情報の詳細を入力し、再度保存して続行をクリックします。

これで、Drupalのインストールが開始され、以下のような画面が表示されます。

インストールが完了したら、Drupalサイト情報の詳細を入力し、Drupal用の新しい管理ユーザーを作成します。次に、保存して続行をクリックして確認します。

設定が完了すると、以下のようなDrupalのホームページが表示されます。

結論
おめでとうございます!Alma Linux 9サーバーにDrupalをインストールしました。Httpd、MariaDB、PHPでDrupalをインストールし、LetsencryptからSSL/TLSでDrupalを保護しました。Drupalがインストールされたので、新しいテーマを追加したり、拡張機能をインストールしたりし始めてください。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。