0x01 前言
Caddy是一款快速,易用的生產(chǎn)型開(kāi)源Web服務(wù)器宦搬,使您的工作效率更高牙瓢。
適用于Windows,Mac间校,Linux矾克,BSD,Solaris和Android憔足。
在Nginx胁附,Apache遍地的今天,你是否崇尚一個(gè)配置簡(jiǎn)單并卻功能強(qiáng)大的web服務(wù)器呢滓彰?
0x02 特性
- 使用Caddyfile 輕松進(jìn)行配置
- 默認(rèn)情況下自動(dòng)啟用HTTPS
- 默認(rèn)HTTP/2
- 虛擬主機(jī)控妻,可以同時(shí)支持多個(gè)站點(diǎn)
- TLS實(shí)現(xiàn)更安全的連接
- 可擴(kuò)展的插件
- 運(yùn)行在任何地方,沒(méi)有外部依賴(lài)(甚至沒(méi)有l(wèi)ibc)
0x03 下載地址
直接下載
https://caddyserver.com/download/windows/amd64?license=personal
bash命令
curl https://getcaddy.com | bash -s personal
0x04 基本使用
安裝目錄下新建一個(gè)index.html文件
echo "hello world" > index.html
執(zhí)行caddy.exe即可運(yùn)行
D:\caddy_v0.10.9_windows_amd64_custom_personal>caddy.exe
Activating privacy features... done.
http://localhost:2015
caddy默認(rèn)端口為2015揭绑,所以瀏覽器訪問(wèn)127.0.0.1:2015
即可看到hello world弓候。
0x05 配置
Caddyfile基本配置
新建Caddyfile文件,例如下面這樣:
localhost
push
browse
websocket /echo cat
ext .html
log /var/log/access.log
proxy /api 127.0.0.1:7005
header /api Access-Control-Allow-Origin *
Caddy在運(yùn)行時(shí)會(huì)自動(dòng)查找Caddyfile文件并應(yīng)用其配置他匪。
使用自己的域名
以管理員權(quán)限運(yùn)行
caddy.exe -host example.com
使用真實(shí)的域名會(huì)觸發(fā)Caddy的隱私功能菇存,這些功能在端口80和443上運(yùn)行.
0x06 Caddyfile配置詳解
Caddyfile是置Caddy的配置文件。
Caddyfile位于不同的位置或名稱(chēng)不同邦蜜,可用如下命令指定撰筷。
caddy.exe -conf D:\caddy\Caddyfile
示例如下:
localhost:8080
gzip
log ../access.log
markdown /blog {
css /blog.css
js /scripts.js
}
- 第一行配置為站點(diǎn)地址
- gzip是一個(gè)http指令
- log為日志存儲(chǔ)地址
- 包含空格的參數(shù)必須用引號(hào)括起來(lái)
- Caddyfile里可以用“#”注釋
使用單個(gè)Caddyfile配置多個(gè)站點(diǎn)時(shí),每個(gè)站點(diǎn)需要使用大括號(hào)來(lái)分隔它們的配置:
mysite1.com {
root /www/mysite1.com
}
mysite2.com {
root /www/mysite2.com
gzip
log ../access.log
}
如果有許多配置相同的站點(diǎn)畦徘,可以使用:
https://mysite1.com, http://mysite2.com {
...
}
在地址和參數(shù)中允許使用環(huán)境變量。用大括號(hào)括起來(lái)即可抬闯,并且可以使用Unix或Windows可變格式:
localhost:{$PORT}
root {%SITE_ROOT%}
0x07 總結(jié)
如果你用不到nginx井辆、apache里面的高級(jí)功能,并且急需一個(gè)配置簡(jiǎn)單溶握,功能基本都能滿足的web服務(wù)器(caddy的那么多插件可以說(shuō)是很強(qiáng)大了)杯缺,那caddy可能是不錯(cuò)的選擇。
附:
更多配置參閱:https://caddyserver.com/docs
項(xiàng)目地址:https://github.com/mholt/caddy
官網(wǎng):https://caddyserver.com/
歡迎訪問(wèn)我的個(gè)人博客 www.ixuchao.cn