ウェブサイト検索

Debian 12にTYPO3 CMSをインストールする方法


Debian 12にTYPO3 CMSをインストールする方法

このチュートリアルはこれらのOSバージョンのために存在します

  • Debian 12 (ブックワーム)
  • Debian 11 (バルセイヤ)
  • Debian 9(ストレッチ)

このページで

  1. 前提条件
  2. 依存関係のインストール
  3. PHPの設定
  4. MariaDBサーバーの設定
  5. Composerを使用してTYPO3 CMSをダウンロードする
  6. Apache2のバーチャルホストの設定
  7. Certbotを使用してTYPO3 CMSを保護する
  8. Webインストーラーを使用してTYPO3 CMSをインストールする
  9. 結論

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

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

このチュートリアルでは、LAMPスタック(Apache2、MariaDB、PHP)上のDebian 12サーバーにTYPO3 CMSをインストールする方法を説明します。

前提条件

このガイドを進める前に、以下のものが揃っていることを確認してください:

  • Debian 12サーバー。
  • sudo管理者権限を持つ非ルートユーザー。
  • ドメイン名があなたのサーバーのIPアドレスを指している。

依存関係のインストール

TYPO3は、PHPで書かれたオープンソースのコンテンツ管理システムであり、MySQL/MariaDBデータベースサーバーをサポートしています。TYPO3 CMSはComposer PHP依存関係マネージャーを介してインストールでき、Apache2またはNginxウェブサーバーで実行できます。

このガイドでは、LAMPスタック(Apache2、MariaDB、PHP)とComposerを使用してTYPO3 CMSを実行します。これらは公式のDebianリポジトリからAPTを使用して簡単にインストールできます。TYPO3 CMSの依存関係をインストールするために、次の手順を完了してください。

まず、以下のコマンドを使用してDebianリポジトリを更新およびリフレッシュします。

sudo apt update

以下の apt install コマンドを使用して、TYPO3 CMS のパッケージ依存関係をインストールします。このコマンドを使うことで、追加の PHP 拡張機能とともに PHP 依存管理ツールとして Composer を含む LAMP スタック (Apache2, MariaDB, PHP) をインストールします。

sudo apt install apache2 mariadb-server composer php php-common php-mysql libapache2-mod-php php-gd php-curl php-json php-xmlrpc php-intl php-bcmath php-zip php-apcu php-mbstring php-fileinfo php-xml php-soap

インストールを確認し進めるには「yo」と入力してください。

依存関係がインストールされた後、インストールが成功したことを確認するために、各依存関係を検証しなければなりません。

apache2サービスが実行中であり、有効になっていることを確認するために、以下のコマンドを実行してください。

sudo systemctl is-enabled apache2
sudo systemctl status apache2

以下の出力は、apache2サービスが実行中であり、かつ有効であることを示しています。

以下のコマンドを使用してmariadbサービスを確認してください。

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb

apache2サービスと同様に、出力enabledはmariadbが有効であることを確認します。また、出力active (running)はmariadbが実行中であることを確認します。

次に、以下のコマンドを使用してPHPのバージョンと拡張機能を確認してください。

php -v
php -m

PHP 8.2がインストールされており、apcu、curl、fileinfo、およびgdなどのいくつかの拡張機能が有効になっていることがわかるはずです。

最後に、Composer がインストールされていることを確認するために、次のコマンドを実行してください。そして、Composer のバージョンを確認してください。

which composer
sudo -u www-data composer -v

以下の出力は、Composer 2.5 が /usr/bin/composer にインストールされていることを示しています。

PHPの設定

LAMPスタックとComposerをインストールした後、PHPのインストールを設定します。TYPO3 CMSは動作するために特定のPHP設定を必要としますので、今からTYPO3 CMSのインストールに必要なようにphp.iniの設定を変更します。

次のnanoエディタコマンドを使用して、デフォルトのPHP設定/etc/php/8.2/apache2/php.iniを開きます。

sudo nano /etc/php/8.2/apache2/php.ini

デフォルトのPHP設定を次のように変更し、必ずmemory_limitとdate.timezoneオプションをサーバー環境に合わせて調整してください。

memory_limit = 512M
max_execution_time = 240
max_input_vars = 1500
date.timezone = Europe/Amsterdam
post_max_filesize = 50M
upload_max_filesize = 50M

作業が完了したら、ファイルを保存して終了してください。

次に、次の systemctl コマンドを実行して apache2 サービスを再起動し、PHP インストールに変更を適用します。

sudo systemctl restart apache2

次に、以下のコマンドを実行して新しいPHPINFOファイル/var/www/html/info.phpを作成します。これにより、PHPのインストールが正常に動作していることが確認できます。

echo "<?php phpinfo(); ?>" > /var/www/html/info.php

最後に、ウェブブラウザを開いて、サーバーのIPアドレスの後にPHPINFOファイルパスを付けてアクセスします。例えば、http://192.168.10.15/info.phpのようにです。すべてがうまくいけば、PHPインストールに関する詳細情報が表示されるはずです。

MariaDBサーバーの設定

次のセクションでは、mariadb-secure-installation ユーティリティを使用して MariaDB サーバーを保護し、TYPO3 CMS が mariadb クライアントを介して使用する新しいデータベースとユーザーを作成します。

mariadb-secure-installation コマンドを下記に実行して、MariaDB サーバーのインストールをセキュリティ強化してください。

sudo mariadb-secure-installation

このプロセス中に、いくつかのデフォルトのMariaDB設定を変更するよう求められます。変更を適用するにはYを入力し、拒否するにはnを入力してください。

以下は、あなたが求められるMariaDBサーバーの設定のいくつかです。

  • UNIXソケット認証に切り替えますか?nと入力してENTERキーを押してください。デフォルトのMariaDBのrootユーザーはすでに保護されています。オプションとして、yを入力することで有効にすることもできます。
  • ルートパスワードを変更しますか? 確認するには y を入力して、新しい MariaDB ルートパスワードを設定してください。
  • 匿名ユーザーを削除しますか?確認するにはyを入力してください。
  • リモートからのルートログインを禁止しますか? 確認するには 'y' を入力してください。MariaDBのルートユーザーを使用している場合、ローカル接続のみが許可されます。
  • テストデータベースとそのアクセスを削除しますか?デフォルトのデータベース'test'を削除するには、確認のためにyを入力してください。
  • 最後に、yを再入力してMariaDBサーバーのすべてのテーブルの特権を再読み込みし、新しい変更を適用します。

MariaDBサーバーのセキュリティを確保した後、TYPO3 CMSで使用される新しいデータベースとユーザーを作成します。それらを作成するには、mariadbクライアントコマンドを介してMariaDBサーバーにログインする必要があります。

以下のmariadbコマンドを使用してMariaDBサーバーにログインします。促されたら、MariaDBのルートパスワードを入力してください。

sudo mariadb -u root -p

ログインしたら、以下のクエリを実行して新しいデータベースtypo3dbとユーザーtypo3を作成します。以下のクエリでパスワードを変更することを忘れないでください。

CREATE DATABASE typo3db;
GRANT ALL PRIVILEGES ON typo3db.* to typo3@localhost IDENTIFIED BY 'typo3password';
FLUSH PRIVILEGES;

次に、ユーザーtypo3がデータベースtypo3dbにアクセスできることを確認するために、次のクエリを実行してください。

SHOW GRANTS FOR typo3@localhost;

以下の出力は、MariaDB ユーザー typo3 がデータベース typo3db にアクセスできることを確認しています。

MariaDBサーバーから退出するには「quit」と入力してください。

Composerを使用してTYPO3 CMSをダウンロードする

このガイドでは、Composerを介してダウンロードできるTYPO3 CMSバージョン12をインストールします。次の手順では、Webルートディレクトリを設定し、TYPO3 CMSのソースをダウンロードします。また、TYPO3 CMS Webルートディレクトリの適切な権限と所有権を設定します。

新しいウェブルートディレクトリ /var/www/typo3 と追加のディレクトリ /var/www/{.cache,.config} を次のコマンドを使用して作成します。ディレクトリ /var/www/typo3 は、TYPO3 CMS のインストールのためのウェブルートディレクトリとして使用されます。

mkdir -p /var/www/{.cache,.config,typo3}

次に、以下のコマンドを実行して、/var/www/typo3 ディレクトリの所有権をユーザー www-data に変更します。その後、/var/www/typo3 ディレクトリの所有者に対して読み取りおよび書き込みアクセスを有効にします。

sudo chown -R www-data:www-data /var/www/{.cache,.config,typo3}
sudo chmod u+rw /var/www/typo3

次に、/var/www/typo3ディレクトリに移動し、以下のcomposerコマンドを使ってTYPO3 CMSのソースをダウンロードします。この例では、TYPO3 CMS 12をダウンロードします。

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

プロセス中に次の出力が表示されます:

完了したら、以下が得られる出力です:

TYPO3 CMSのソースコードをダウンロードした後、以下のlsコマンドを実行してソースコードをリストします。

ls

次のようなTYPO3 CMSのソースコードのリストが表示されるはずです。

Apache2のバーチャルホストの設定

次のセクションでは、TYPO3 CMSを実行するために使用される新しいApache2バーチャルホスト設定を作成します。そのため、先に進む前に、ドメイン名がサーバーのIPアドレスを指していることを確認してください。

最初に、モジュールのリライトとヘッダーを有効にするために、以下のコマンドを入力します。

sudo a2enmod rewrite headers

次に、以下のnanoエディタコマンドを使用して、新しい仮想ホスト構成/etc/apache2/sites-available/typo3.confを作成してください。

sudo nano /etc/apache2/sites-available/typo3.conf

次の設定を挿入し、TYPO3 CMSインストールのドメイン名を必ず変更してください。

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

作業が完了したら、ファイルを保存してエディタを終了してください。

次に、以下のコマンドを実行して新しい仮想ホストファイル typo3.conf を有効にし、Apache2の構文を確認してください。

sudo a2ensite typo3.conf
sudo apachectl configtest

正しいApache2構文があると、出力は構文OKになります。

最後に、以下のコマンドを入力してapache2サービスを再起動し、変更を適用してください。

sudo systemctl restart apache2

Certbotを使用してTYPO3 CMSを保護する

仮想ホストの設定後、LetsencryptからのSSL/TLS証明書を有効にして、TYPO3 CMSのインストールを安全にします。Letsencryptの証明書を生成するために、CertbotとCertbot Apacheプラグインを使用します。

次のaptコマンドを使用してCertbotとCertbot Apacheプラグインをインストールします。

sudo apt install certbot python3-certbot-apache

インストールを続行するにはyを入力してください。

インストールが完了したら、以下の certbot コマンドを実行して、TYPO3 CMS インストール用の新しい SSL/TLS 証明書を生成してください。ドメイン名とメールアドレスは、自分の情報に変更することを忘れないでください。

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

あなたのSSL/TLS証明書は/etc/letsencrypt/live/domain.comディレクトリで利用可能です。また、仮想ホストファイルtypo3.confはHTTPSで自動的に構成され、これはCertbot Apacheプラグインによって行われます。

Webインストーラーを使用してTYPO3 CMSをインストールする

まず、次のコマンドを実行して新しいファイル/var/www//typo3/public/FIRST_INSTALLを作成します。ファイル/var/www/typo3/public/FIRST_INSTALLが存在しない限り、TYPO3ウェブインストーラーは利用できません。

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

今すぐウェブブラウザを開き、https://howtoforge.local/ のようにあなたのTYPO3 CMSドメイン名にアクセスしてください。TYPO3ウェブインストーラーにリダイレクトされます。

システム環境が準備できていることを確認したら、問題は検出されませんでしたので、インストールを続けてくださいをクリックしてください。

MariaDBデータベースのユーザー、パスワード、およびホストの詳細を入力し、次に続行をクリックしてください。

既存の空のデータベースを使用というオプションを選択し、データベースtypo3dbを選択します。それから、もう一度続けるをクリックします。

次に、新しい管理ユーザー、パスワード、およびTYPO3 CMSインストール用のメールアドレスを入力します。続行をクリックして確認してください。

インストールが完了すると、次のページが表示されるはずです。

TYPO3バックエンドを開くをクリックして、TYPO3管理ダッシュボードにアクセスしてください。

TYPO3のログインページが表示されるはずです。ユーザー名とパスワードを入力し、次にログインをクリックしてください。

ログインが成功すると、以下のようなTYPO3管理ダッシュボードが表示されるはずです:

右上のメニューで情報メニューをクリックすると、TYPO3 CMSのインストールに関する詳細情報が表示されます。次のスクリーンショットでは、TYPO3 CMS 12 が PHP 8.2、MariaDB サーバー 10.11、および Apache2 ウェブサーバー 2.4 でインストールされていることがわかります。

結論

結論として、あなたはDebian 12サーバーにLAMPスタック(Apache2、MariaDB、PHP)とComposer PHPパッケージマネージャーを使用してTYPO3 CMSを正常にインストールしました。また、Letsencryptから生成されたSSL/TLS証明書を使用して、CertbotおよびCertbot ApacheプラグインでTYPO3 CMSのインストールを保護しました。これで、TYPO3 CMSを使用してコンテンツを管理したり、記録管理を行ったり、多言語サイトの追加言語を設定したり、その他多くのことができます。

関連記事: