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
相关推荐
优雅的潮叭3 小时前
c++ 学习笔记之 chrono库
c++·笔记·学习
不大姐姐AI智能体4 小时前
搭了个小红书笔记自动生产线,一句话生成图文,一键发布,支持手机端、电脑端发布
人工智能·经验分享·笔记·矩阵·aigc
浅念-5 小时前
C语言小知识——指针(3)
c语言·开发语言·c++·经验分享·笔记·学习·算法
burning_maple5 小时前
mysql数据库笔记
数据库·笔记·mysql
hkNaruto5 小时前
【AI】AI学习笔记:LangGraph 与 LangChain的关系以及系统性学习路线选择
笔记·学习·langchain
jrlong6 小时前
DataWhale大模型基础与量化微调task3学习笔记(第 5章:深入大模型架构_MoE 架构解析)
笔记·学习
wdfk_prog7 小时前
[Linux]学习笔记系列 --[drivers][base]map
linux·笔记·学习
浅念-8 小时前
链表经典面试题目
c语言·数据结构·经验分享·笔记·学习·算法
啥都会点的大秀8 小时前
声学仿真学习笔记
笔记·学习
不会代码的小猴9 小时前
Linux环境编程第三天笔记
linux·笔记