文件
贊助的專案

設定檔轉接器

Caddy 的原生設定語言是 JSON,但手動編寫 JSON 可能既繁瑣又容易出錯。這就是為什麼 Caddy 支援透過設定檔轉接器以其他語言進行設定。它們是 Caddy 外掛程式,可以讓您使用偏好的格式設定,方法是為您輸出 Caddy JSON

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

已知的設定檔轉接器

以下是目前可用的設定檔轉接器(有些是第三方專案)

使用設定檔轉接器

您可以在命令列上指定設定檔轉接器,方法是在大多數接受設定的子命令中使用 --adapter 標記

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

或透過 API 在 /load 端點

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 結果。當輸入有問題時(例如,語法錯誤)會發生錯誤。當轉接出現問題但並非致命問題時(例如,不支援的功能)會發出警告。如果使用透過警告轉接的設定,建議謹慎。