文件
一個 項目

設定適配器

Caddy 的原生設定語言是 JSON,但手寫 JSON 可能很繁瑣且容易出錯。這就是為什麼 Caddy 支援透過設定適配器使用其他語言進行設定。它們是 Caddy 外掛程式,讓您能使用您偏好的格式進行設定,並為您輸出 Caddy JSON

例如,設定適配器可以 將您的 NGINX 設定轉換為 Caddy JSON

已知的設定適配器

目前提供以下設定適配器(有些是第三方專案)

使用設定適配器

您可以在大多數需要設定的子指令中,使用命令列上的 --adapter 旗標指定設定適配器

caddy run --config caddy.yaml --adapter yaml

或透過 /load 端點 的 API

curl localhost:2019/load \
	-H "Content-Type: application/yaml" \
	--data-binary @caddy.yaml

如果您只想取得輸出 JSON 而不想執行它,可以使用 caddy adapt 指令

caddy adapt --config caddy.yaml --adapter yaml

注意事項

並非所有設定語言都 100% 相容於 Caddy;有些功能或行為無法順利轉換,或尚未編寫到適配器或 Caddy 本身中。

有些適配器會進行 1 對 1 的轉換,例如 YAML->JSON 或 TOML->JSON。其他適配器是專門為 Caddy 設計的,例如 Caddyfile。通常,這些適配器永遠都能運作。

不過,並非所有轉接器都能隨時運作。設定檔轉接器會盡力以最高的保真度和正確性將您的輸入轉換為 Caddy JSON。由於此轉換程序無法保證每次都能完整且正確,因此我們不稱它們為「轉換器」或「翻譯器」。它們是「轉接器」,因為它們至少會為您提供一個良好的起點,讓您完成最後的 JSON 設定檔製作。

設定檔轉接器可以輸出結果的 JSON、警告和錯誤。如果沒有錯誤發生,則為 JSON 結果。當輸入內容有問題(例如語法錯誤)時,就會發生錯誤。當適應內容有問題,但並非絕對致命(例如,功能不受支援)時,就會發出警告。建議您謹慎使用已透過警告進行適應的設定檔。