ウェブサイト検索

Debian 11にCaddy Webサーバーをインストールする方法


Debian 11にCaddy Webサーバーをインストールする方法

このページで

  1. 前提条件
  2. Debian 11にCaddyをインストールする
  3. キャディサービスを管理する
  4. CaddyでPHPサポートを有効にする
  5. Caddyの仮想ホスト構成ファイルを作成する
  6. キャディウェブサイトにアクセスする
  7. 結論

Caddyは、GO言語で書かれた無料でオープンソースのモダンなWebサーバーです。これは軽量で商業的にサポートされたWebサーバーで、HTTP/2および実験的なHTTP/3プロトコルをサポートしています。外部依存関係なしにどこでも実行でき、プラグインを通じて拡張できます。セキュリティを考慮して設計されており、ウェブサイトのホスティングに役立つ多くの機能を提供しています。

このチュートリアルでは、Debian 11にCaddyウェブサーバーをインストールする方法について説明します。

前提条件

  • Debian 11を実行しているサーバー。
  • サーバーIPにポイントされた有効なドメイン名。
  • サーバーにはルートパスワードが設定されています。

Debian 11にCaddyをインストールする

デフォルトでは、CaddyパッケージはDebian 11のデフォルトリポジトリに含まれていません。したがって、Caddyリポジトリをシステムに追加する必要があります。

まず、次のコマンドを使用して必要な依存関係をすべてインストールします:

apt-get install -y curl debian-keyring debian-archive-keyring apt-transport-https

次に、次のコマンドを使ってGPGキーをダウンロードして追加します:

curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | apt-key add -

次に、次のコマンドを使用してAPTにCaddyリポジトリを追加します:

curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | tee /etc/apt/sources.list.d/caddy-stable.list

次に、リポジトリを更新し、次のコマンドを実行してCaddyウェブサーバーをインストールします。

apt-get update
apt-get install caddy -y

Caddyがインストールされたら、次のコマンドを使用してCaddyのバージョンを確認してください:

caddy version

次の出力が得られます:

v2.4.5 h1:P1mRs6V2cMcagSPn+NWpD+OEYUYLIf6ecOa48cFGeUg=

caddyバイナリが80番や443番のような特権ポートに接続できるようにするには、以下のコマンドを実行してください:

setcap 'cap_net_bind_service=+ep' /usr/bin/caddy

キャディサービスを管理する

systemdを使用してCaddyサービスを管理できます。

Caddyサービスを開始するには、次のコマンドを実行します:

systemctl start caddy

Caddyサービスを停止するには、次のコマンドを実行してください:

systemctl stop caddy

Caddyサービスをシステム再起動時に開始できるようにするには、次のコマンドを実行してください:

systemctl enable caddy

Caddyサービスのステータスを確認するには、次のコマンドを実行します:

systemctl status caddy

次の出力が得られます:

? caddy.service - Caddy
     Loaded: loaded (/lib/systemd/system/caddy.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-10-16 14:34:44 UTC; 2min 30s ago
       Docs: https://caddyserver.com/docs/
   Main PID: 2370 (caddy)
      Tasks: 7 (limit: 2341)
     Memory: 17.5M
        CPU: 30ms
     CGroup: /system.slice/caddy.service
             ??2370 /usr/bin/caddy run --environ --config /etc/caddy/Caddyfile

Oct 16 14:34:44 debian11 caddy[2370]: JOURNAL_STREAM=8:16308
Oct 16 14:34:44 debian11 caddy[2370]: {"level":"info","ts":1634394884.658216,"msg":"using provided configuration","config_file":"/etc/caddy/Ca>
Oct 16 14:34:44 debian11 caddy[2370]: {"level":"info","ts":1634394884.6623824,"logger":"admin","msg":"admin endpoint started","address":"tcp/l>
Oct 16 14:34:44 debian11 caddy[2370]: {"level":"info","ts":1634394884.6626618,"logger":"http","msg":"server is listening only on the HTTP port>
Oct 16 14:34:44 debian11 caddy[2370]: {"level":"info","ts":1634394884.663054,"msg":"autosaved config (load with --resume flag)","file":"/var/l>
Oct 16 14:34:44 debian11 systemd[1]: Started Caddy.
Oct 16 14:34:44 debian11 caddy[2370]: {"level":"info","ts":1634394884.6655433,"msg":"serving initial configuration"}
Oct 16 14:34:44 debian11 caddy[2370]: {"level":"info","ts":1634394884.6656897,"logger":"tls","msg":"cleaning storage unit","description":"File>
Oct 16 14:34:44 debian11 caddy[2370]: {"level":"info","ts":1634394884.6657932,"logger":"tls","msg":"finished cleaning storage units"}
Oct 16 14:34:44 debian11 caddy[2370]: {"level":"info","ts":1634394884.6694443,"logger":"tls.cache.maintenance","msg":"started background certi>

CaddyでPHPサポートを有効にする

まず、以下のコマンドを使用してPHPおよびその他の必要な拡張機能をインストールします:

apt-get install php-fpm php-mysql php-curl php-gd php-mbstring php-common php-xml php-xmlrpc -y

PHPをインストールした後、PHP-FPMの設定ファイルを編集し、デフォルトのユーザーとグループをcaddyに変更します:

nano /etc/php/7.4/fpm/pool.d/www.conf

ユーザー名とグループ名をwww-dataからcaddyに置き換えます:

user = caddy
group = caddy
listen.owner = caddy
listen.group = caddy

ファイルを保存して閉じてから、変更を適用するためにPHP-FPMサービスを再起動してください。

systemctl restart php7.4-fpm

Caddyの仮想ホスト構成ファイルを作成する

Caddyのデフォルトのバーチャルホスト設定ファイルは/etc/caddy/Caddyfileにあります。

次のコマンドを使用して/etc/caddy/Caddyfileファイルを編集します:

nano /etc/caddy/Caddyfile

すべての行を削除し、次の行を追加します:

caddy.example.com:80 {
    root * /usr/share/caddy/
    encode gzip zstd
    php_fastcgi unix//run/php/php7.4-fpm.sock
}

ファイルを保存して閉じたら、変更を適用するためにCaddyサービスを再起動してください。

systemctl restart caddy

次に、以下のコマンドを使用してCaddy用のサンプルPHPファイルを作成します:

nano /usr/share/caddy/info.php

次の行を追加してください:

<?php

phpinfo();
?>

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

キャディウェブサイトにアクセスする

さて、ウェブブラウザを開いて、URL http://caddy.example.com/info.php を使ってCaddyのウェブサイトにアクセスしてください。次の画面にPHPページが表示されるはずです:

結論

おめでとうございます!あなたはDebian 11にCaddyウェブサーバーを正常にインストールしました。これでCaddyウェブサーバーを使用して自分のウェブサイトを持つことができます。質問があればお気軽にお尋ねください。

関連記事: