Rocky Linux 9/AlmaLinux 9にCaddyとPHP 8をインストールする
このステップバイステップのガイドでは、Rocky Linux 9/AlmaLinux 9にPHP 8サポート付きのCaddyをインストールし、無料のSSL証明書を取得する方法を示します。
Caddyは、シンプルで効率的、かつポータブルなGoで書かれた無料のセキュリティ重視のHTTP/2対応ウェブサーバーです。仮想ホストのサポートやリバースプロキシ機能など、現代的な機能を提供しています。さらに、CaddyはLet’s Encryptを使用してSSL/TLS証明書を自動的に取得し更新する初めてのウェブサーバーです。
Caddyの人気は、使いやすさ、スピード、そしてネイティブのSSLサポートのおかげで、ここ数年で急上昇しています。そのため、多くの開発者やシステム管理者にとって、すぐに選ばれるウェブサーバーになりつつあります。
Caddyの設定と管理が初めての方にとって、このプロセスは daunting に思えるかもしれませんが、心配しないでください。私たちはそれを簡単にしました。このガイドの手順に従うことで、Rocky Linux 9 または AlmaLinux 9 上で PHP 8 サポート付きの Caddy サーバーを迅速かつ簡単に立ち上げることができ、ウェブサイトの設定が楽になります。それでは、始めましょう。
前提条件
このガイドを完了するには、Rocky Linux 9 または AlmaLinux 9 サーバーへのアクセスが必要です。また、表示されたすべてのコマンドは、通常のユーザーが sudo 実行権限を持って実行します。そのため、あなた自身がそれを所有している必要があります。
もちろん、コマンドの sudo 部分をスキップして、ルートユーザーとして直接実行することもできます。結果は両方の場合で同じになります。
さらに、サーバーにファイアウォールを使用している場合、ポート80と443がブロックされないことを確認してください。
sudo firewall-cmd --permanent --add-service={http,https}
sudo firewall-cmd --reloadfirewalldの取り扱いについて心配しているなら、私たちの包括的なガイドが役立ちます。
ステップ1:COPRリポジトリを有効にする
Caddyウェブサーバーは、デフォルトのRockyまたはAlmaリポジトリにはありません。しかし、COPR(Cool Other Package Repo)リポジトリを通じてインストールできます。では、まずそれを追加しましょう。
sudo dnf install 'dnf-command(copr)'次に、次のコマンドを実行した後に「Y」と答えることでそれを有効にします:
sudo dnf copr enable @caddy/caddyステップ2:Rocky Linux 9/AlmaLinux 9 に Caddy Web サーバーをインストールする
Caddyウェブサーバーをインストールします:
sudo dnf install caddy
インストール中にCOPRリポジトリのGPGキーを受け入れるように求められます。「Y」と入力して「Enter」を押してください。
ステップ3: Caddyのサービスを有効にして開始する
Caddyをインストールしたら、自動起動を有効にし、サービスを開始します。
sudo systemctl enable caddy
sudo systemctl start caddy次のコマンドを実行することで、Caddy サービスの状態を確認できます:
sudo systemctl status caddy結果は以下のように表示されるべきです。
さて、ブラウザをCaddyが提供するドメインに向けると、CaddyのデフォルトのWebページがあなたを歓迎します。このガイドでは、一時的に作成されたサブドメイン「caddy.tmplinux.com」を使用します。もちろん、あなたのケースに合ったものに置き換えてください。
Caddyウェブサーバーのデフォルトページに迎えられます。
ご覧の通り、Caddyは動作しており、期待通りに機能しています。次のステップでは、PHPサポートを追加し、私たちのドメインのためにバーチャルホストを作成し、自動的に無料のSSL Let's Encrypt証明書を取得します。
ステップ4: Rocky Linux 9/AlmaLinux 9 に PHP 8 をインストールする
CaddyウェブサーバーにPHPサポートを追加するには、PHPファイルを実行するためにPHP-FPMをインストールして使用する必要があります。したがって、最も広く使用されているPHPモジュールのいくつかと一緒にインストールするには、以下のコマンドを入力し、プロンプトが表示されたら「Y」と入力して確認してください。
sudo dnf install php-fpm php-mysqlnd php-gd php-cli php-curl php-mbstring php-bcmath php-zip php-opcache php-xml php-json php-intlそれから、"/etc/php-fpm.d/www.conf" ファイルを開いてください:
sudo vim /etc/php-fpm.d/www.conf次の3行を見つけて変更してください:
user = apache
group = apache
listen.acl_users = apache,nginxこれに対して:
user = caddy
group = caddy
listen.acl_users = apache,nginx,caddy最終結果はこのようになるべきです:
最後に、ファイルを保存して終了し、PHP-FPMサービスをシステム起動時に開始するように有効にし、それを起動します:
sudo systemctl enable php-fpm
sudo systemctl start php-fpmステップ5:CaddyをPHPとSSLを使用するように構成する
進む前に、ウェブサイトファイルを格納するディレクトリを作成してください。つまり、Caddyがウェブサイトのルートディレクトリを指す場所です。例えば、「/srv/www/caddy」です。
sudo mkdir -p /srv/www/caddySELinuxを使用している場合は、このディレクトリのファイルセキュリティコンテキストを変更する必要があります。
sudo chcon -t httpd_sys_content_t /srv/www/caddy -R
sudo chcon -t httpd_sys_rw_content_t /srv/www/caddy -R私たちはプロセスの最も楽しい部分に達しました。ここでは、Caddyウェブサーバーがその栄光を放っています - 設定です。ApacheやNginxの複雑な設定に慣れているシステム管理者は魅了されるでしょう。さらに、Rocky Linux 9やAlmaLinux 9システムでPHPサポートと自動SSL証明書の発行を簡単に設定できることは注目に値します。
お好みのテキストエディタを使って、Caddyの設定ファイル「Caddyfile」を開き、すべての行を削除して以下の行を追加してください。これらが何のためのものか理解するのに助けが必要な場合は心配しないでください。詳細については、以下で説明します。
sudo vim /etc/caddy/Caddyfilecaddy.tmplinux.com {
root * /srv/www/caddy
tls [email
encode gzip zstd
php_fastcgi unix//run/php-fpm/www.sock
}最終結果はこのようになるべきです:
caddy.tmplinux.com:Caddyウェブサーバーが提供するドメイン名です。使用するものに置き換えてください。root * /srv/www/caddy: あなたのウェブサイトファイルを含むルートディレクトリへの完全なパス。tls [email: Caddyに無料のLet’s Encrypt SSL証明書を自動的に発行するよう指示し、所有者への通知が送信されるメールアドレスが指定されています。エンコード gzip zstd: 高速パフォーマンスのために圧縮を使用することを指定します。php_fastcgi unix//run/php-fpm/www.sock: PHP-FPMサービスがリッスンするソケットファイルへのパス。
すべて準備が整いました。ファイルを保存して終了してください。残るのは、Caddyサービスを再起動して新しい設定を適用することだけです。
sudo systemctl restart caddyステップ6: CaddyのPHPおよびSSLサポートを確認する
Rocky Linux 9/AlmaLinux 9でPHPとSSLサポートを備えたCaddyのインストールが完了しました。では、PHP-FPMが機能していてCaddyと正常に統合されていることを確認するために、テスト用のPHPファイルを作成しましょう。
echo "<?php phpinfo(); ?>" | sudo tee /srv/www/caddy/index.phpついに、プロセスの最も楽しい部分に到達しました:あなたの努力の結果を楽しむことです。それでは、ドメインアドレスをブラウザに読み込みましょう。この場合、「caddy.tmplinux.com」です。
素晴らしい仕事です!ご覧の通り、PHPのインストールに関する完全な情報を持つウェブページが表示されます。また、Caddyはドメインのために自動的にSSL証明書を発行し、ウェブサイトへの通信を安全にしています。しかし、CaddyとLet’s Encrypt証明書の組み合わせはどれほど安全なのでしょうか?Qualys SSL Labsで確認してみましょう。はい、最高のスコアです!
最後に、必要な明確化を行いたいと思います。Caddyは、トラフィックのプロキシ方法の特性により、サーバーがCloudflareやDigitalOceanなどのプロキシサービスの背後にある場合、SSL証明書を発行できません。
つまり、Caddyはこの機能を使用するためにいくつかの追加モジュールを事前にコンパイルする必要があります。この手順は簡単ですが、この記事の範囲外のため、別の記事で詳細に説明されます。
結論
このガイドでは、Rocky Linux 9 または AlmaLinux 9 において、PHP 8 と SSL サポートを用いた Caddy ウェブサーバーのインストール方法を紹介しました。これにより、PHP ベースのウェブアプリがサーバー上で実行できるようになります。certbot ツールは、無料の Let’s Encrypt SSL 証明書を取得するための別のオプションです。私たちのハウツーガイドがその方法を示します。
Caddyは、そのコアに強力なSSLサポートを組み込んでいます。さらに、SSL証明書を自動的に発行し、SSL設定を安全に構成します。したがって、Caddyに関するさらに詳細な情報については、プロジェクトのウェブサイトとドキュメントを確認してください。
全体的に見て、Caddyは信頼できるNginxの代替品です。RockyやAlmaにPHP 8のサポートでインストールし、Let’s EncryptのSSL証明書を取得するのは簡単で効率的であり、企業向けLinuxシステムに迅速で安全、かつ信頼性のあるウェブサーバーをセットアップしようとしている人々にとって素晴らしい選択肢となります。













