NginxからCaddyに変更した際の作業手順、デザイナーにもお勧めの簡単で高性能なWebサーバー

WebサーバーをNginxから、高性能で簡単に構築できるCaddyに変更した際の作業手順を紹介します。

Caddyはクラス最高のセキュリティを誇る、HTTPSを自動的にデフォルトで使用する唯一のサーバーです。証明書の自動更新やTLSクライアント認証なども備えており、Webサーバーとしてもファイルサーバーとしても利用できます。LinuxやBSDをはじめ、WindowsやmacOSでも動作します。

WebサーバーをNginxからCaddyに変更した際の作業メモ

Goodbye Nginx, hello Caddy
by Hanna

はじめに

私は最近、私の個人サイトをNginxからCaddyに変更しました。Caddyについて調べてみたところ、さまざまな恩恵が得られるので試してみたいと思っており、以前から計画してきました。
この記事では、Caddyのセットアップ方法、良くなった点とちょっと戸惑った点について解説します。

Webサーバーの準備

Webサーバーの旅でまず最初にすることは、Webサーバーソフトウェア自体をインストールしてセットアップすることです。私のVPSはUbuntuなので、NginxやCaddyなどのインストールは以下のコマンドを実行するだけです。

しかし、今回はそうではありませんでした。
サーバーがCloudflareの背後にあるため、CloudflareのDNSサポートを有効にするためにCaddyのプラグインを有効にする必要がありました。

それをするには、CaddyはGoで構築されているため、まずGo言語の最新バージョンをインストールしなければなりませんが、当時のUbuntuリポジトリの最新バージョンはGo 1.13で、CaddyはGo 1.14を必要としていました。これを修正するには、次のコマンドを実行してGo 1.14.2を取得し、最終的にパスにGoを追加しました。

Goをインストールした後は、プラグインを使用してソースからWebサーバーを構築できるように、Caddyのxcaddyツールをインストールしました。このツールはかなり使いやすく、1つのコマンドで実行可能ファイルを構築できました。

コンパイルの完了後、実行ファイルを/usr/binに叩くだけで、Caddyがインストールされました。

Caddyの構成

Caddyをインストールした後に設定を行いましたが、この部分は最初は少し注意が必要でしたが、しばらくすると、何をする必要があるかが理解できました。最初にしなければならなかったことは、2つのパーミションを持つスコープ付きのCloudflare APIトークンを作成することです。これについてはここで読むことができます。

Webサーバーの実際の構成は、Nginx構成ファイルと比較して非常に簡単でした。以下は、私のWebサイトの現在の構成です。

後はCaddyにCaddyfileを使用するように指示するか、コマンドでjsonに変更して使用することができるので、私は以下のコマンドで後者を実行しました。

そしてついに、私は簡単なコマンドでWebサーバーを起動することができました。

Systemdの構成

Caddyをバックグラウンドで実行し、systemdに管理させたいと思ったので、簡単なサービスを作成しました。

終わりに

Caddyをインストールするのは確かに旅でしたが、Caddyには証明書の自動更新、自動https/ssl、より新しい技術で構築されていること、よりシンプルな構成とプラグインのインストールなどの利点があり、最終的にはそれだけの価値があったと思います。Caddyについて詳しくはこちらをご覧ください。

ここまで読んでくれて、ありがとうございます。

sponsors

top of page

©2020 coliss