ウェブサイト検索

Rocky Linux 9にTYPO3 CMSをインストールする方法


Rocky Linux 9にTYPO3 CMSをインストールする方法

このページで

  1. 前提条件
  2. httpdウェブサーバーのインストール
  3. MariaDBサーバーのインストール
  4. MariaDBデータベースとユーザーの作成
  5. PHP 8.0のインストール
  6. Composerをインストールする
  7. Certbotのインストール
  8. TYPO3 CMS ソースコードのダウンロード
  9. httpdのバーチャルホストを設定する
  10. TYPO3のインストールを開始する
  11. 結論

TYPO3は無料でオープンソースのエンタープライズグレードのコンテンツ管理システムです。スケーラブルなCMS、マルチサイト対応、マルチリンガルインストール、高度なセキュリティ実装、超高速、そしてどこでも実行できるなど、複数のエンタープライズレベルの機能を提供します。

TYPO3 CMSを使用すると、柔軟で信頼性の高いウェブサイトを構築できます。TYPO3 CMSは、活気に満ちたプロフェッショナルコミュニティを持つバックエンドです。そして、設計の時点で、TYPO3 CMSはプラグイン可能なコンテンツ管理システムであり、適応可能で分離されたアーキテクチャを持っています。

このガイドでは、Rocky Linux 9サーバーにTYPO3 CMS(エンタープライズグレードのコンテンツ管理システム)をインストールします。httpdウェブサーバー、MariaDBデータベース、最新のPHP 8.0バージョンを使用してTYPO3 CMSを設定します。このガイドには、TYPE3デプロイメントを保護するために使用されるCertbotとLetsencryptによるHTTPSの実装が含まれています。

前提条件

まず、このガイドを完成させるために以下の要件を満たす必要があります:

  • Rocky Linux 9サーバー - この例では、ホスト名がTYPO3-RocであるRocky Linuxを使用します。
  • sudo/root 権限を持つ非ルートユーザー。
  • パーミッシブモードで動作しているSELinux。
  • サーバーのIPアドレスにポイントされたドメイン名 - この例ではドメイン「howtoforge.local」を使用します。

それで全部です。すべての要件が準備できたら、インストールを始めることができます。

httpdウェブサーバーのインストール

TYPO3は、PHPで書かれたエンタープライズグレードのCMS(コンテンツ管理システム)およびウェブアプリケーションです。さまざまなタイプのウェブサーバーで実行できます。この例では、httpdウェブサーバーを使用してTYPO3 CMSをインストールし、実行します。

パッケージをインストールする前に、以下のdnfコマンドを入力して、EPEL(Enterprise Linux用の追加パッケージ)リポジトリをシステムに追加します。このリポジトリは、後で追加のパッケージをインストールする際に必要になります。

sudo dnf install epel-release

次に、httpdウェブサーバーをインストールするために以下のdnfコマンドを実行してください。プロンプトが表示されたら、確認のためにyを入力し、続行するにはENTERを押してください。

sudo dnf install httpd

httpdがインストールされたら、以下のsystemctlコマンドを入力してhttpdウェブサーバーを起動し、エンABLEDします。これにより、httpdウェブサーバーが実行され、システムの起動時に自動的に起動するようになります。

sudo systemctl start httpd
sudo systemctl enable httpd

以下のsystemctlコマンドを使用してhttpdウェブサーバーのステータスを確認してください。'enabled'のような出力が得られるはずで、これはhttpdサービスがブート時に自動的に実行されることを確認します。また、httpdウェブサーバーの状態は実行中です。

sudo systemctl is-enabled httpd
sudo systemctl status httpd

httpd インストールにアクセスする前に、Rocky Linux システムで firewalld を介して HTTP および HTTPS プロトコルを開く必要があります。

次のfirewall-cmdコマンドを入力して、HTTPおよびHTTPSポートをfirewalldに追加します。その後、firewalldを再読み込みして変更を適用します。

sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

出力の成功は操作の成功を確認します。次のコマンドでfirewalldルールのリストを確認できます。

sudo firewall-cmd --list-all

「サービス」セクションでは、HTTPおよびHTTPSプロトコルがfirewalldに追加されているのが表示されるはずです。

httpdウェブサーバーをインストールし、firewalldを設定したので、次にMariaDBデータベースサーバーのインストールを開始します。

MariaDBサーバーのインストール

このセクションでは、MariaDBデータベースサーバーをインストールし、'mariadb-secure-installation'コマンドを使用して展開を自動的にセキュアにします。

まず、次のdnfコマンドを入力してMariaDBデータベースサーバーをインストールします。

sudo dnf install mariadb-server

プロンプトが表示されたらyを入力し、ENTERキーを押して続行してください。

今、次のsystemctlコマンドユーティリティを使用してMariaDBサービスを開始し、有効にします。MariaDBサービスは現在実行中であり、有効になっているはずです。これは、MariaDBサービスが起動時に自動的に開始されることを意味します。

sudo systemctl start mariadb
sudo systemctl enable mariadb

次のsystemctlコマンドを入力して、MariaDBサービスを確認し、サービスが実行中で有効であることを確認してください。

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb

出力 '有効' は、MariaDBサーバーが有効であり、システム起動時に自動的に実行されることを確認します。出力 'アクティブ (実行中)' は、MariaDBサーバーが実行中であることを確認します。

最後に、MariaDBのデプロイメントを安全にするために、次の 'mariadb-secure-installation' コマンドを実行します。

sudo mariadb-secure-installation

次の設定が求められます - 確認するには y を入力し、いいえの場合は n を入力してください。

  • 認証をunix_socketに変更しますか?入力はnです。
  • MariaDBのrootパスワードを変更しますか? 確認するにはyを入力し、MariaDBサーバーの新しいパスワードを入力して、そのパスワードを再入力してください。
  • リモートルートログインを無効にしますか? 確認するにはyを入力してください - ルートユーザーはリモートで接続できないようにする必要があります。
  • 匿名ユーザーを削除しますか?確認するにはyを入力してください。
  • デフォルトのデータベース「test」を削除しますか?削除を確認するにはyを入力してください。
  • 最後に、yを入力してテーブルの権限を再読み込みし、新しい変更を適用します。

MariaDBのデプロイメントが完了したら、TYPO3 CMSのデプロイメントのために新しいデータベースとユーザーを作成する準備が整いました。

MariaDBデータベースとユーザーの作成

このセクションでは、TYPO3 CMSのインストールに使用される新しいMariaDBデータベースとユーザーを作成します。

最初に、下記のmariadbコマンドを使用してMariaDBシェルにログインします。MariaDBのルートパスワードを入力し、ENTERキーを押してください。

sudo mariadb -u root -p

次に、以下のMariaDBクエリを実行して新しいデータベースとユーザーを作成します。この例では、ユーザーを「typo3」として、「typo3db」という新しいデータベースを作成します。以下のクエリでパスワードを変更し、データベースのデフォルト文字セットとして「utf8mb4」を使用するようにしてください。

CREATE DATABASE typo3db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL PRIVILEGES ON typo3db.* to typo3@localhost IDENTIFIED BY 'typo3password';
FLUSH PRIVILEGES;

次に、次のクエリを使用してMariaDBの利用可能なユーザーのリストを確認してください。新しいユーザー「typo3」が追加され、あなたのMariaDBサーバーで利用可能であることがわかります。

SELECT USER,host FROM mysql.user;

最後に、次のクエリを使用してMariaDBユーザー'typo3'の権限を確認してください。ユーザー'typo3'がデータベース'typo3db'に対してすべての権限を持っていることがわかるはずです。

SHOW GRANTS FOR typo3@localhost;

今、MariaDBシェルからログアウトするには「quit」と入力してください。

これで、TYPO3 CMS インストールのための MariaDB データベースの設定は完了しました。次のステップに進んで PHP のインストールを開始してください。

PHP 8.0のインストール

TYPO3 CMSは主にPHPで書かれており、この記事執筆時点でTYPO3 CMSの最新バージョンはPHP 8.xパッケージをサポートしています。このセクションでは、Rocky Linux 9リポジトリでデフォルトで利用可能なPHP 8.0をインストールします。

次のdnfコマンドを入力してPHP 8.0パッケージをインストールしてください。プロンプトが表示されたら、確認のためにyを入力してENTERを押してください。

sudo dnf install php php-common php-mysqlnd php-gd php-curl php-json php-intl php-bcmath php-zip php-apcu php-mbstring php-fileinfo php-xml php-soap

PHPがインストールされたら、以下のnanoエディタコマンドを使用して設定ファイル'/etc/php.ini'を開いてください。

sudo nano /etc/php.ini

以下の行でデフォルトのphp.ini設定を変更します。

memory_limit = 512M
max_execution_time = 300
max_input_vars = 2000
date.timezone = Europe/Stockholm
post_max_size = 30M
upload_max_filesize = 30M

完了したらファイル'/etc/php.ini'を保存して終了してください。

次に、httpdサービスを再起動し、'php.ini'ファイルに加えた新しい変更を適用するために、以下のsystemctlコマンドユーティリティを実行してください。

sudo systemctl restart httpd

以下の 'php' コマンドを使用して、現在の PHP バージョンを確認することもできます。システムに PHP 8.0 がインストールされているという出力を受け取るはずです。

php --version

これでPHP 8.0パッケージがインストールされ、php.iniファイルが設定されました。次のステップでは、TYPO3 CMSのPHP依存関係をインストールするために使用される依存関係マネージャーであるComposerをインストールします。

Composerをインストールする

ComposerはアプリケーションレベルのPHP依存関係管理ツールです。公式のインストーラスクリプトを使用して手動でインストールすることもできますし、EPELリポジトリを通じてインストールすることもできます。

次のdnfコマンドを入力してEPELリポジトリからComposerをインストールしてください。プロンプトが表示されたら、確認のためにyを入力し、続行するにはENTERを押してください。

sudo dnf install composer

Composerがインストールされたら、以下のコマンドを入力してComposerのバージョンを確認します。

sudo -u apache composer -V

v2.5.1のComposerがあなたのRocky Linuxシステムにインストールされていることを確認する出力は以下の通りです。

Composerがインストールされたので、次のステップはLetsencryptからSSL/TLS証明書を生成するために使用されるCertbotをインストールすることです。

Certbotのインストール

Certbotは、LetsencryptからSSL/TLS証明書を生成するためのコマンドラインツールです。RHELベースのディストリビューションでは、EPELリポジトリからCertbotをインストールできます。

以下のdnfコマンドを入力して、certbotとpython3-certbot-apachパッケージをシステムにインストールします。プロンプトが表示されたらyを入力し、ENTERを押して続行してください。

sudo dnf install certbot python3-certbot-apache

インストールが完了したら、以下のコマンドを実行してインストールを確認してください。

which certbot
certbot --version

'certbot'コマンドのバイナリパスは'/bin/certbot'にあります。そして、インストールしたcertbotのバージョンはv2.1.0です。

ComposerとCertbotがインストールされていれば、TYPO3 CMSをインストールする準備が整いました。

TYPO3 CMS ソースコードのダウンロード

このセクションでは、ターゲットインストールディレクトリとTYPO3 CMSソースコードのダウンロードを設定します。

次のコマンドを入力して新しいディレクトリ/var/www/typo3を作成します。これはTYPO3 CMSのルートインストールディレクトリとして使用されます。

mkdir -p /var/www/typo3

「/var/www/typo3」ディレクトリの所有権を「apache」というユーザーとグループに変更します。また、このディレクトリの所有者が読み書きできることを確認する必要があります。これにより、デフォルトで「apache」ユーザーとして実行されるhttpdウェブサーバーにTYPO3 CMSのソースコードへのアクセスを提供します。

sudo chown -R apache:apache /var/www/typo3
sudo chmod u+rw /var/www/typo3

今、'/var/www/typo3' ディレクトリに移動し、次の Composer コマンドを使用して TYPO3 CMS のソースコードをダウンロードしてください。

cd /var/www/typo3
sudo -u apache composer create-project typo3/cms-base-distribution:^11 .

出力 :

TYPO3 CMSのソースコードがダウンロードされたら、次のコマンドを入力して/var/www/typo3ディレクトリ内のファイルとディレクトリの一覧を確認します。

ls -lah /var/www/typo3

以下の出力は、TYPO3 CMSのソースコードがダウンロードされたことを確認します。また、TYPO3 CMSのソースコードの所有者がユーザーおよびグループ「apache」であることを確認する必要があります。

TYPO3 CMSのソースコードをダウンロードしたので、次にTYPO3 CMSを実行するために使用されるhttpdの仮想ホスト設定を作成して設定します。

httpd仮想ホストの設定

このセクションでは、TYPO3 CMSを実行するために使用される新しいhttpd仮想ホスト設定を作成します。また、Certbotコマンドを通じてLetsencryptからSSL/TLS証明書を生成します。

始める前に、ドメイン名があなたのサーバーのIPアドレスにポイントされていることと、Letsencryptに登録するために使用するメールアドレスがあることを確認してください。

以下のnanoエディタコマンドを使用して、新しいhttpdバーチャルホスト設定ファイル「/etc/httpd/conf.d/typo3.conf」を作成してください。

sudo nano /etc/httpd/conf.d/typo3.conf

次の行をファイルに追加し、TYPO3 CMSインストールのドメイン名を必ず変更してください。

<VirtualHost *:80>
    ServerAdmin [email 
    DocumentRoot /var/www/typo3/public
    ServerName howtoforge.local
    Protocols h2 http/1.1
     <Directory /var/www/typo3/public/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>
     ErrorLog /var/log/httpd/typo3-error.log
     CustomLog /var/log/httpd/typo3-access.log combined
    
     <Directory /var/www/typo3/public/>
            RewriteEngine on
            RewriteBase /
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*) index.php [PT,L]
    </Directory>
</VirtualHost>

作業が完了したら、ファイル'/etc/httpd/conf.d/typo3.conf'を保存して終了してください。

次に、次のコマンドを実行して、適切なhttpd構成があることを確認し、検証してください。成功すると、'構文はOK'のような出力が得られるべきです。

sudo apachectl configtest

次に、httpdサービスを再起動して変更を適用するために、次のsystemctlコマンドユーティリティを入力してください。

sudo systemctl restart httpd

これで、TYPO3 CMS の httpd バーチャルホスト構成が完了しました。

次に、TYPO3 CMSのドメイン名に対してSSL/TLS証明書を生成するために、以下のcertbotコマンドを入力してください。また、以下のコマンドでドメイン名とメールアドレスを変更することを忘れないでください。

sudo certbot --apache --agree-tos --no-eff-email  --redirect --hsts --staple-ocsp --email [email  -d howtoforge.local

完了すると、あなたのSSL/TLS証明書は「/etc/letsencrypt/live/yourdomain.com/」ディレクトリで利用できるようになります。また、httpdのバーチャルホスト設定はSSL証明書で自動的に構成され、HTTPからHTTPSへの自動リダイレクトも行われます。

これで、TYPO3 CMSのためのhttpdウェブサーバーの設定が完了しました。また、TYPO3 CMSのドメイン名用のSSL/TLS証明書も生成しました。これで、TYPO3 CMSのインストールにアクセスできるようになります。

TYPO3のインストールを開始する

TYPO3 CMSのインストールを始める前に、'FIRST_INSTALL'という新しい空のファイルを'/var/www/typo3/public/'ディレクトリに作成する必要があります。これにより、このサーバーに初めてTYPO3 CMSをインストールしていることが示されます。

次のコマンドを入力して、'/var/www/typo3/public/'ディレクトリ内に新しいファイル'FIRST_INSTALL'を作成してください。

sudo -u apache touch /var/www/typo3/public/FIRST_INSTALL

今、ウェブブラウザを開き、あなたのTYPO3 CMSインストールのドメイン名を入力してください(例: https://howtoforge.local/)。

TYPO3 CMS のインストーラーは、最初のページでシステム環境を確認および検証します。ボタン「問題は検出されませんでした、インストールを続行します」が表示されることを確認してください。これは、あなたのシステムが TYPO3 CMS のインストールの準備ができていることを確認します。

TYPO3 CMSのインストールに使用されるMariaDBユーザーの詳細を今入力してください。

「既存の空のデータベースを使用」オプションを選択し、ドロップダウンメニューからデータベース「typo3db」を選択します。次に、続行をクリックします。

次に、TYPO3 CMSの管理ユーザーのユーザー名、メールアドレス、およびパスワードを入力してください。強力なパスワードを使用するようにしてください。

続行をクリックして進んでください。

完了すると、'インストール完了'のような出力が得られるはずです。

今すぐ「バックエンドに直接移動」オプションを選択し、「TYPO3バックエンドを開く」ボタンをクリックして続行してください。

そして、あなたはTYPO3 CMSのログインページにリダイレクトされます。管理者ユーザー名とパスワードを入力し、次にログインをクリックしてください。

成功すれば、TYPO3 CMS管理ダッシュボードが表示されるはずです。

TYPO3 CMSのインストールに使用している詳細なソフトウェアを確認するには、ユーザープロファイルの左側にある「アプリケーション情報」メニューをクリックしてください。

次のスクリーンショットに似た詳細が表示されるはずです - 本文執筆時点で、httpd/Apacheウェブサーバー、PHP 8.0、およびMariaDBデータベースサーバーを使用してTYPO3 CMS v11.5がインストールされています。

結論

このガイドでは、Rocky Linux 9サーバーにエンタープライズグレードのコンテンツ管理システムTYPO3 CMSをインストールしました。httpdウェブサーバー、MariaDBデータベースサーバー、およびPHP 8.0を使用してTYPO3 CMSをインストールしました。

さらに、あなたはLetsencryptからSSL証明書を生成するためにCertbotもインストールしました。そして、SSL/TLS証明書を介してTYPO3 CMSのインストールを保護し、Certbotを使ってHTTPからHTTPSへの自動リダイレクトを設定しました。

これにより、サイトレコードを作成し、バックエンドユーザーを追加し、バックエンド言語を追加して多言語を有効にすることで、TYPO3 CMSの設定を開始できます。TYPO3 CMSの詳細については、TYPO3の公式ドキュメントを訪れてください。

関連記事: