Caddyfile Studio

Caddyfile を貼ると、サイトブロック・スニペット((name) と import)・matcher(@name)の一覧を木で表示し、括弧の不一致や定義されていない参照を行番号つきで指摘します。リバースプロキシ・静的サイト・SPA・www の転送の雛形も作れます。

端末内で処理・アップロードなしスマホ対応オフライン対応

ファイルや入力内容はお使いの端末(ブラウザ)の中だけで処理され、サーバーへは送信されません。

貼り付けた内容はブラウザの中だけで処理し、送信しません。

Caddyfile を貼り付けると、サイトブロック・スニペット・matcher の一覧と確認結果を表示します。

使い方

  1. 「設定を確認」の入力欄に Caddyfile を貼ります(「サンプルで試す」でも試せます)。

  2. 「確認結果」で、構文と参照の問題(閉じ忘れ・未定義の matcher やスニペット)と、確認したい点を行番号つきで読みます。

  3. 「構造」で、サイトブロックとスニペットの入れ子を確かめます。

  4. 雛形は「Caddyfile を作る」で内容とドメイン名を選び、コピーか保存で取り出します。

  5. 反映の前に、サーバーで caddy validate を実行します。

できること

サイトブロック・スニペット・matcher を一覧

アドレスごとのサイトブロック、(name) のスニペット、@name の matcher を数えて、入れ子のまま木で示します。

参照のずれを行番号で指摘

閉じ忘れの { や対応のない }、定義されていない @matcher と import 先のスニペットを、誤りとして挙げます。

Caddy 2 の書き方に沿った確認

自動 HTTPS が効かない書き方(http:// の付いたアドレス・IP・auto_https off)、reverse_proxy の上流、tls internal、圧縮と Server ヘッダーの指定、ディレクティブの順序を挙げます。

雛形

静的サイト・リバースプロキシ・www から非 www への転送・SPA(try_files)を、ドメイン名を入れて出せます。

送信しない

貼った設定はブラウザの中だけで処理し、サーバーへ送りません。

こんなときに

  • Node.js や Python のアプリの前に置く reverse_proxy を、Caddy 2 の書き方で作りたい
  • www のアクセスを非 www へ 301 で転送する書き方を確かめたい
  • import で読むスニペットの名前違いや、定義されていない matcher を探したい
  • tls internal を公開サイトに使っていないか確認したい
  • SPA の try_files を含む静的サイトの設定を用意したい

対応状況

機能対応補足
サイトブロック・スニペット・matcher の一覧と木の表示対応—
閉じ忘れ・対応のない括弧・未定義の matcher とスニペットの指摘対応—
Caddy 2 の標準ディレクティブの一覧との照合一部対応プラグインの指令は「不明」と出し、誤りとは判定しません
よくある誤りの指摘(自動 HTTPS・reverse_proxy・tls internal・順序など)一部対応代表的な書き方を目安に挙げます。誤検出も見逃しもあります
nginx の設定から Caddyfile への変換非対応対応しません。Caddy の書き方で作り直してください
import で読むファイルの中身の確認非対応ファイル名だけを一覧にします
caddy validate による本当の検査・サーバーへの接続非対応実行も通信もしません。反映の前に caddy validate で確かめてください

制限・注意事項

  • 貼り付けは 30 万文字・2 万ディレクティブ・入れ子 64 段までです。
  • 指摘は字句と構造による目安です。正しい設定を指摘することも、問題を見逃すこともあります。
  • 標準ディレクティブの一覧は Caddy 2 の標準の範囲です。プラグインの指令は「不明」と出します。
  • ファイルとして読み込む import の中身は読みません。
  • 雛形は例です。転送先のポートやパス、ドメイン名は自分の環境に合わせて書き換えてください。
  • tls internal は自己署名の証明書です。公開サイトでは使わないでください。

プライバシーと安全性

貼り付けた設定・指摘・生成した雛形はお使いのブラウザの中だけで処理されます。サーバーへ送信・保存されることはありません。

よくある質問

Caddy でリバースプロキシを書くには?
「Caddyfile を作る」で「リバースプロキシ」を選び、ドメイン名を入れます。reverse_proxy 127.0.0.1:3000 の転送先は、自分のアプリに合わせて書き換えます。
Caddy で www を非 www に転送するには?
www.example.com のサイトブロックで redir https://example.com{uri} permanent と書きます。permanent は 301 です。本体は example.com 側のサイトブロックで配信します。
Caddy の自動 HTTPS が効かないのはどんなときですか?
アドレスに http:// を付けたとき、ホスト名がなく IP やポートだけを書いたとき、グローバルオプションで auto_https off を指定したときです。「設定を確認」はこの書き方を指摘します。
ディレクティブの順序は?
Caddy は既定の順に並べ替えてから実行します。rewrite や try_files の順序を固定したいときは route で囲みます。「設定を確認」は、その可能性のある組み合わせを挙げます。
Caddyfile の確認は caddy validate の代わりになりますか?
なりません。括弧と参照、よくある誤りの目安を見るだけです。反映の前に caddy validate を実行してください。
貼った Caddyfile はサーバーに送られますか?
いいえ。ブラウザの中だけで処理し、送信も保存もしません。

nginx Config Studio

リバースプロキシ・SPA・PHP-FPM・HTTP から HTTPS への転送などの設定をフォームから作り、手元の nginx.conf を貼ると構文エラーや見落としやすい点を一覧にします。ブラウザの中だけで動き、nginx は実行しません。

アップロードなし

CORS Studio

ブラウザが CORS エラーで通さないとき、要求(Origin・メソッド・ヘッダー・認証情報)と応答ヘッダーを入れると、通るか通らないかと理由を、ヘッダーごとに示します。許可する設定の書き方も作れます。

アップロードなし

証明書・CSR・PEM Studio

PEM・DER(.cer/.crt)・CSR・PKCS#7(.p7b)を読み、Subject・有効期限(残り日数)・SAN・公開鍵・署名アルゴリズム・SHA-256 フィンガープリントなどを一覧にします。チェーンの並び順と署名も確かめ、PEM と DER を変換できます。すべてブラウザの中で処理し、秘密鍵は読み込みません。

アップロードなし

.env スタジオ(.env Studio)

.env を貼る・ドロップすると、キーと値を表で確認でき、重複・空の値・書式の誤りを行番号つきで指摘します。値は既定で伏せ、.env と .env.example を比べたり、.env.example・Kubernetes の Secret に書き出したりできます。.env の書き方(dotenv 形式)を確かめたいときに使い、docker compose の変数展開などツール固有の細かい仕様までは判定しません。

アップロードなし

Apache Config Studio

.htaccess・httpd.conf・VirtualHost を貼ると、セクションの構造を木で表示し、閉じ忘れ・未知の指令・公開しすぎの設定を行番号つきで指摘します。https 転送・www の統一・HSTS の書き方の雛形も作れます。

アップロードなし

hosts スタジオ(Hosts Studio)

hosts ファイルを貼り付けると、IP とホスト名の一覧を表にし、IP の形式の誤り・重複・localhost の書き換えを行番号つきで指摘します。書式(IP と空白で区切ったホスト名、# のコメント)を確かめるためのツールで、名前解決の結果や、OS へ保存する操作は行いません。保存は書き出したファイルを、管理者権限で OS の hosts の場所に置いてください。

アップロードなし

最終更新: