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
相关推荐
蓑衣夜行2 分钟前
QtWebEngine 自动重启方案
开发语言·c++·qt·web·qwebengine
代码游侠7 分钟前
应用——统计文件字符数、单词数、行数
服务器·笔记·算法
EQ-雪梨蛋花汤14 分钟前
【Unity笔记】 WorldStreamer2指南——针对大世界的流式加载与优化
笔记·unity·游戏引擎
haiyu柠檬1 小时前
Ruby On Rails 笔记6——常用回调上
笔记·后端·ruby on rails
程思扬1 小时前
你的模型你做主:Fooocus + cpolar,安全远程生成 AI 图像
人工智能·笔记·tcp/ip·前端框架·figma·蓝湖
S_Yu_Tong2 小时前
C#图解教程笔记17-枚举器和迭代器
笔记
_落纸2 小时前
《传感器与检测技术》第 4 章 光电式传感器原理与应用
笔记·自动化
兜兜转转了多少年3 小时前
《Prompt Engineering白皮书》笔记04 System / Context / Role 三种提示工程
人工智能·笔记·prompt
BlackWolfSky3 小时前
ES6 学习笔记3—7数值的扩展、8函数的扩展
前端·javascript·笔记·学习·es6
Oll Correct3 小时前
Excel基础操作(四)
笔记·excel