ドキュメント
a プロジェクト

bind🔗

サーバーのソケットをバインドするインターフェイスをオーバーライドします。

通常、このリスナーは空の (ワイルドカード) インターフェイスにバインドします。ただし、リスナーを別のホスト名や IP に強制的にバインドすることもできます。このディレクティブでは、ホストのみを受け付け、ポートは受け付けません。ポートは、サイトアドレス によって決定されます (デフォルトは 443)。

サイトが矛盾してバインドされると、意図しない結果が生じる可能性があります。たとえば、同じポート上の 2 つのサイトが 127.0.0.1 に解決され、そのサイトのうちの 1 つだけが bind 127.0.0.1 で構成されている場合は、特定のホストを持たずにポートにバインドするため、アクセスできるサイトは 1 つだけです。OS はより具体的に一致するソケットを選択します。(バーチャル ホストは異なるリスナー間で共有されません。)

bindネットワーク アドレス を受け付けますが、ポートを含めることはできません。

構文🔗

bind <hosts...>
  • <hosts...> は、リスナーをバインドするホスト インターフェイスのリストです。

🔗

ソケットを現在のマシンでのみアクセス可能にするには、ループバック インターフェイス (localhost) にバインドします。

example.com {
	bind 127.0.0.1
}

IPv6 を含める場合

example.com {
	bind 127.0.0.1 [::1]
}

10.0.0.1:8080 にバインドする場合

example.com:8080 {
	bind 10.0.0.1
}

/run/caddy で Unix ドメインソケットにバインドする場合

example.com {
	bind unix//run/caddy
}

すべてのユーザーが書き込みできるファイルパーミッションに変更する (デフォルトは、オーナーのみが書き込みできる 0200)

example.com {
	bind unix//run/caddy|0222
}

1 つのドメインを 2 つの異なるインターフェイスにバインドして、異なるレスポンスを使用する場合

example.com {
	bind 10.0.0.1
	respond "One"
}

example.com {
	bind 10.0.0.2
	respond "Two"
}