使用 가비아 和 Caddy 设置子域名

힘센캥거루
2025년 5월 27일(수정됨)
2
99

看到朋友的大学运营子域名,我也想尝试一下。

其实并不难。

可以通过查看传入请求的主机并分配端口的方式,也就是反向代理实现。

所以我尝试了一下。

1. 在 가비아 设置子域名

1) 登录 가비아 并访问 DNS 管理工具

使用 가비아 和 Caddy 设置子域名-1

首先访问 가비아 首页并登录。

然后在顶部菜单中点击 My가비아 -> 服务管理,然后从菜单中选择 DNS 管理工具

可能只要进入我的页面就会显示 DNS 管理工具。

2) 选择域名并添加记录

使用 가비아 和 Caddy 设置子域名-2

在列表中,点击要为其设置子域名的域名右侧的 设置

使用 가비아 和 Caddy 设置子域名-3

然后点击底部的 +添加记录 以移动到选项卡。

3) A 记录设置

选择记录类型为 A。

主机

输入所需的子域名

输入 Caddy 服务器的公网 IP 地址

例如: test

例如: 123.123.123.123

使用 가비아 和 Caddy 设置子域名-4

输入后,点击右侧的 确认,最后点击 保存 完成设置。

2. 在服务器的 Caddy 中设置子域名响应

1) 编写 Caddyfile

打开 Caddy 的配置文件 Caddyfile,添加以下内容。

test.example.com {
    respond "Hello from test.example.com!"
}

使用 가비아 和 Caddy 设置子域名-5

test.example.com 部分可以设为我的子域名。

由于还没有要分配到该子域名的东西,所以用 respond 输出简单文本。

2) 重新启动 Caddy 服务器

现在,通过重新启动 Caddy 服务器应用设置。

brew services restart caddy
使用 가비아 和 Caddy 设置子域名-6

Caddy 自动获取 HTTPS 的认证密钥,因此不需要单独设置。

现在访问我设置的 子域名

以下图文如果出现文本即成功。

使用 가비아 和 Caddy 设置子域名-7

3. 体验

对于如何在一台服务器上运营多个服务器好奇,这次通过学习反向代理,彻底理解了。

关键是请求的 头部包含主机域名

编码中,总是不断有新的东西要学习。

反而挺好

使用 가비아 和 Caddy 设置子域名-8

관련 글

Next.js 全栈博客开发记
Next.js 全栈博客开发记
在第一次接触网页开发大约 1 年之后,我开始想着想要拥有一个属于自己的博客。于是我就大概花了 6 个月几乎只埋头做这件事。前端部分的功能,参考金度亨先生的博客就已经足够了。我用 mdx 搭建起一个博客,其实连一周都没花到。事实上,仅靠前端也并不会给博客运营带来什么大问题。有一阵子我也觉得,只要写 m...
使用 Caddy 实现 Next.js 无停机部署(本地服务器)
使用 Caddy 实现 Next.js 无停机部署(本地服务器)
每次一有想在主页上加点什么的念头就去 build,结果中间好像偶尔会有人访问。于是 Search Console 上的分数开始一点点往下掉。觉得这样不行,就开始思考要怎么做无停机部署。1. 两个项目文件夹 + 两个终端答案出乎意料地简单:开两个终端。在一个终端里 build,另一个终端里让服务器跑着...
谷歌搜索索引自动化 - Web Search Indexing API
谷歌搜索索引自动化 - Web Search Indexing API
继上次搞完 IndexNow 之后,也决定在谷歌这边做一下自动化。查了一下,发现谷歌是通过一个叫 Web Search Indexing 的 API 来支持这个功能的。1. 适用范围官方文档中,这个 API 正式支持的范围是招聘公告和流媒体视频服务。说是为了给对实时性要求高的内容创建索引用的,但搜了...
搜索索引生成自动化 - IndexNow
搜索索引生成自动化 - IndexNow
在向 Bing 提交站点收录时才发现,Bing 提供了一个叫做 IndexNow 的功能。核心在于,可以利用 API Key,在写完文章的瞬间就立刻发起索引请求。只要用 fetch 写出类似下面这样的请求,并把它串联到「写文章」流程里,就可以在把文章保存到 DB 的同时发送索引生成请求。POST /...
被入侵的 Nextjs、React 服务器经历
被入侵的 Nextjs、React 服务器经历
我最初接触到这次安全问题是在 12 月 5 日凌晨。据说在 React 中可以在未认证的情况下进行远程代码执行。看到这条新闻后,我虽然告诉了别人,但总觉得自己应该没事,就什么想法也没有地略过了。1. 发现被入侵的痕迹结果当我想登录更新博客代码时,在终端里发现了有命令被执行过的痕迹。/bin/sh:...
在博客中添加多语言功能(NextJS、next-intl、Vercel AI SDK)
在博客中添加多语言功能(NextJS、next-intl、Vercel AI SDK)
最近我觉得博客需要多语言功能。于是决定用 next-intl 来实现多语言服务。1.i18n首先,在做多语言服务时有一些必须遵守的原则。这被称为 internationalization,单词太长,所以把首字母 i 和尾字母 n,以及中间 18 个字母合在一起,写成 i18n。1) i18n 的原则...

댓글을 불러오는 중...