caddy2笔记

注意

1. 在没有公网ip的机器A上启用自动https一定要注意A机器上的dns不要用网关地址或路由器地址,一定要用公共DNS服务器地址,因为家用宽带封了常用的服务端口,其中包括了dns服务的端口53。启动会报类似如下错误
CNAME dns query: dial tcp 192.168.1.1:53: connect: connection refused
2.泛域名或https非443端口要用到相应的插件,域名解析到非公网ip也要相应的插件

编译插件

bash 复制代码
package main

import (
	caddycmd "github.com/caddyserver/caddy/v2/cmd"

	// plug in Caddy modules here
	_ "github.com/caddy-dns/cloudflare"
	_ "github.com/caddyserver/caddy/v2/modules/standard"
)

func main() {
	caddycmd.Main()
}

在windows下编译linux的执行文件

bash 复制代码
go env -w GOOS=linux
go env -w GOARCH=amd64
go build -ldflags "-w -s" -o caddy-cf .

配置示例

1. 泛域名配置并自动https

bash 复制代码
cat > Caddyfile <<'EOF'
{
        log {
                output file /root/caddy/caddy5/caddy.log
                level INFO
                format console {
                        time_local
                        time_format wall_milli
                }
        }
}

*.zjc001.top {
        tls {
                dns cloudflare gqRkHttI-ZAa8jEb09CsKyf_fPGrae1f13g8GHMk
        }

        @chat host chat.zjc001.top
        handle @chat {
                respond "Hello, world! [chat]"
        }

        @vault host vault.zjc001.top
        handle @vault {
                respond "Hello, world! [vault]"
        }

        handle {
                abort
        }
}
EOF

cloudflare令牌的创建参考:https://pages.uing.vip/post/caddy2/

启动并测试

bash 复制代码
caddy-cf run

浏览器访问chat.zjc001.topvault.zjc001.top将分别显示
Hello, world! [chat]
Hello, world! [vault]

且都自动转成了https

2. 非公网ip配置并自动https

bash 复制代码
cat > Caddyfile <<'EOF'
eone.ehall.top {
        tls {
                dns cloudflare c_A6L9KqCIuuBPXRG1zsg03ZELl6FmQVuARwh3Mv
        }
        encode gzip
        respond "Hello, World!"
}
EOF
相关推荐
位文杰TOP40 分钟前
博客摘录「 六自由度机械臂运动学分析及其轨迹规划」2024年10月8日
笔记
Promise4858 小时前
贝尔曼公式的迭代求解笔记
笔记·算法
锦锦锦aaa9 小时前
【layout理解篇之:mos电阻】
经验分享·笔记
zore_c10 小时前
【C语言】带你层层深入指针——指针详解2
c语言·开发语言·c++·经验分享·笔记
koo36410 小时前
pytorch深度学习笔记
pytorch·笔记·深度学习
眠晚晚10 小时前
API攻防&系统攻防笔记分享
笔记·web安全·网络安全
丝斯201112 小时前
AI学习笔记整理(22)—— AI核心技术(深度学习6)
人工智能·笔记·学习
koo36412 小时前
pytorch深度学习笔记1
pytorch·笔记·深度学习
weixin_4378316512 小时前
CORS是什么
web
jimmyleeee13 小时前
人工智能基础知识笔记二十一:Function Calling
人工智能·笔记