「Caddy」:修訂間差異
跳至導覽
跳至搜尋
第32行: | 第32行: | ||
(subdomain-log) { | (subdomain-log) { | ||
log { | log { | ||
format transform `{request> | format transform `{request>client_ip} - {request>user_id} [{ts}] "{request>method} {request>uri} {request>proto}" {status} {size} "{request>headers>Referer>[0]}" "{request>headers>User-Agent>[0]}"` { | ||
time_format "02/Jan/2006:15:04:05 +0000" | time_format "02/Jan/2006:15:04:05 +0000" | ||
} | } |
於 2025年4月16日 (三) 21:27 的修訂
Caddy是一個HTTP伺服器,主打自動化HTTPS以及簡易的設定。
安裝
在Debian與Ubuntu上都可以使用官方的APT repository安裝:
curl -Lfs https://dl.cloudsmith.io/public/caddy/stable/gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg; echo -e "deb [signed-by=/usr/share/keyrings/caddy-stable-archive-keyring.gpg] https://dl.cloudsmith.io/public/caddy/stable/deb/debian any-version main\ndeb-src [signed-by=/usr/share/keyrings/caddy-stable-archive-keyring.gpg] https://dl.cloudsmith.io/public/caddy/stable/deb/debian any-version main" | sudo tee /etc/apt/sources.list.d/caddy-stable.list; sudo apt update; sudo apt install -y caddy; sudo apt clean
另外下面的範例會用到transform,可以透過這個指令安裝:
sudo caddy add-package github.com/caddyserver/transform-encoder
xcaddy
xcaddy是官方維護的module管理套件,有蠻多module會需要透過xcaddy安裝,通常需要搭配Golang一起裝:
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/xcaddy/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-xcaddy-archive-keyring.gpg; curl -1sLf 'https://dl.cloudsmith.io/public/caddy/xcaddy/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-xcaddy.list; sudo apt update; sudo apt install -y golang xcaddy; sudo apt clean
這邊建議安裝新版的Golang,LTS或是stable的系統所附的版本可能會太舊。
設定
重複使用設定的方法:
(subdomain-log) {
log {
format transform `{request>client_ip} - {request>user_id} [{ts}] "{request>method} {request>uri} {request>proto}" {status} {size} "{request>headers>Referer>[0]}" "{request>headers>User-Agent>[0]}"` {
time_format "02/Jan/2006:15:04:05 +0000"
}
output file /var/log/caddy/{args[0]}_access.log {
mode 0640
}
}
}
bar.example.com {
# ...
import subdomain-log bar.example.com
# ...
}
foo.example.com {
# ...
import subdomain-log foo.example.com
# ...
}
相關連結
外部連結
- 官方網站 (英文)