BOSh
文章227
标签320
分类74
315晚会 36氪 80后 ADB AI AI Agent AI 代理 AI 助手 AI 网关 AI 评测 AI助手 AI大模型 AI安全 AI应用 AI智能体 AI网关 API API 集成 Agent AionUi Android Automation C++ CLI CLI Proxy API CLIProxyAPI CRM Chrome 插件 Claude Opus 4.6 ConnectBot Debian DeepSeek DenchClaw DevOps Docker GEO GPL GPS GPU Gemini Gemini 3.1 Pro GitHub Gmail Gog Google AI Pro Google API Google Gemini HKUDS Hermes Hermes Agent Hexo Hugo IPV6 Jetpack Compose Kimi-K2.5 Kotlin LINUX LaTeX Linux Markdow Markdown MemU Bot MiniMax NAT64 NIX NODE NVIDIA Build NanoClaw Netcatty Newsletter Open WebUI OpenAI OpenAI 兼容接口 OpenCLI OpenClaw PDF 编译 PicoClaw Prismer QClaw QQ机器人 RAG Reddit Rust SFTP SSH Skills Subagent SuperCall Telegram Bot WebSSH Windows WorkBuddy X X热榜 YouTube ZeroClaw arXiv arch c++ git hugo iMessage n8n nanobot node js ntfs pacman podman zz.ac 东海 两性关系 个人助理 中东 中东冲突 中东局势 中关村论坛 中南大学 中国 中美 习惯养成 云同步 亚洲 代理 以色列 任务管理 伊朗 伊朗危机 伊朗战争 伦理 体育 保护主义 信息流 信息管理 停火 健康管理 光通信 免费试用 共和党 养老金 内容工厂 内容生产 内容筛选 军事冲突 军事动态 军民融合 农村 分享 创业 办公自动化 加密 加密货币 加沙 北斗 医学生 半导体 华为 博客 博客助手 博客部署成功 卫星 原生 JS 反重力 台海局势 台湾 命令 喷嚏网 国产 国产化 国产替代 国际 国际关系 国际局势 国际新闻 图卦 图说 地缘政治 基础设施 多代理 多模态AI 大学分析 大模型 孙少平 学习 安全 实时监控 家庭助理 家庭服务器 家装设计 工作总结 工作效率 工作流编排 工具链 平凡的世界 平台责任 开发 开发实录 开源 开源项目 张雪峰 微信 心理健康 情感 战争 投资工具 指标看板 提示词工程 播客 收件箱清理 效率 效率工具 教程 教育制度 数据分析 数据投毒 文献管理 新能源汽车 新闻汇总 日历聚合 时事 时事总结 显卡 晨报 智能体 智能体生态 朝鲜 架构 架构实践 核协议 核武器 桌面Cowork 模型接入 每日图说 比亚迪 油价 活动运营 浏览器自动化 消息通道 消费者权益 渔船 游戏开发 湘雅医院 热点新闻 版本更新 特朗普 生态系统 生活 生活自动化 生物识别 用例 甲骨文云 电池技术 症状追踪 皮皮虾 监管 目标管理 知识库 社交媒体 社会保障 社会百态 社会观察 科技 科研助手 笔记 第一财经 算法推荐 纽森 经济 经济观察 经验分享 编程 网关 网络 网络安全 美伊关系 美伊冲突 美国 美国大选 美国政治 能源安全 能源市场 腾讯 腾讯,龙虾,OpenClaw 腾讯云 自动化 自动化创作 自动化协作 自动化提醒 自动化流水线 自动化运维 自律教练 自由软件 行为改变 视频摘要 记录 许可证 论文写作 论文阅读 语义搜索 语音代理 读书 读书笔记 读后感 财报季 路遥 迁移 运维 远程运维 邀请确认 部署指南 量子计算 销售自动化 阅读感悟 随笔 霍尔木兹海峡 项目管理 飞书 高中生活 高考志愿 黎巴嫩 龙虾

一言

文章归档

不同的baseurl服务器发布办法

不同的baseurl服务器发布办法

此方法不实用

第一步:修改主配置文件 _config.yml

请从主配置文件的 deploy 列表中删除 ZZ.AC 的那三行。修改后的末尾应该像这样:

YAML

1
2
3
4
5
6
7
8
9
10
11
12
13
# ... 前面保持不变 ...
url: http://zsb.hidns.co
root: /

deploy:
- type: git
repo: git@github.com:zhisibi/zhisibi.github.io.git
branch: main
- type: git
repo: ssh://luoyuqisi@s1.ct8.pl/home/luoyuqisi/repos/blog.git
branch: main

# ... 后面保持不变 ...

第二步:新建 ZZ.AC 专用配置文件 _config.zzac.yml

在博客根目录下新建这个文件。它只需要包含差异部分,Hexo 在运行时会自动用它覆盖主配置:

YAML

1
2
3
4
5
6
7
8
# 专门针对公益主机的差异化配置
url: https://lab.bosh.zz.ac/blog
root: /blog/

deploy:
- type: git
repo: ssh://bosh@lab.bosh.zz.ac/home/bosh/repos/blog.git
branch: main

第三步:更新自动化脚本 博士日常博客管理系统.bat

这个脚本会通过两次“清理-生成-发布”流程,确保不同站点的路径完全隔离,互不干扰。

Bash

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
@echo off
chcp 65001 >nul
:menu
cls
echo ==========================================
echo 博士日常博客管理系统 (Windows)
echo ==========================================
echo 1) 写新文章 (hexo new)
echo 2) 本地预览 (hexo s)
echo 3) 全线发布 (GitHub + ct8.pl + ZZ.AC)
echo 4) 备份源码 (git push)
echo 5) 清理缓存 (hexo clean)
echo 6) 退出
echo ==========================================
set /p choice=请选择操作 [1-6]:

if "%choice%"=="1" goto new_post
if "%choice%"=="2" goto preview
if "%choice%"=="3" goto deploy_all
if "%choice%"=="4" goto backup
if "%choice%"=="5" goto clean
if "%choice%"=="6" goto exit
goto menu

:new_post
set /p title=请输入文章标题:
call hexo new "%title%"
pause
goto menu

:preview
echo 正在启动预览 (http://localhost:4000)...
call hexo s
goto menu

:deploy_all
echo >>> 正在清理并为 GitHub/ct8.pl 生成静态文件...
call hexo clean
call hexo g
echo >>> 正在发布至 GitHub & ct8.pl (Root: /)...
call hexo d
echo.
echo >>> 正在为 ZZ.AC 生成专用文件 (Root: /blog/)...
call hexo clean
:: 核心:同时加载两个配置
call hexo g --config _config.yml,_config.zzac.yml
echo >>> 正在发布至 ZZ.AC...
call hexo d --config _config.yml,_config.zzac.yml
echo ==========================================
echo 恭喜!所有服务器同步完成。
echo ==========================================
set /p b_choice=是否顺便备份源码到 Git? [y/n]:
if /i "%b_choice%"=="y" goto backup
pause
goto menu

:backup
echo >>> 正在备份源码到远程仓库...
git add .
set /p msg=请输入提交信息 (直接回车使用当前日期):
if "%msg%"=="" set msg=Backup_%date%
git commit -m "%msg%"
git push origin main
echo 源码备份成功。
pause
goto menu

:clean
call hexo clean
echo 缓存已清理。
pause
goto menu

:exit
exit

这个方案如何解决你的问题?

  1. 路径自动修正:当执行带有 _config.zzac.yml 的命令时,Hexo 会把所有的内部资源链接(如 /css/main.css)自动重写为 /blog/css/main.css。这样你在点击博文时,URL 就会变成 .../blog/2025/12/31/...,从而被 Caddy 准确捕获。

  2. 避免误伤:在发布 GitHub 时,脚本只用了原配,所以 GitHub 上的页面链接依然是干净的根路径。

  3. Caddyfile 简化:现在你可以把 Caddy 的配置改回最标准的形式,不再需要那个“万能后备”处理了:

    代码段

    1
    2
    3
    4
    5
    :8080 {
    handle_path /blog* {
    reverse_proxy localhost:8082
    }
    }

最后一步建议: 由于使用了 Git 方式发布到 ZZ.AC,请确保 ZZ.AC 端的 Git 仓库配置了 post-receive 钩子,以便在你推送代码后,它能自动把文件同步到 8082 端口对应的 Web 目录中。

本文作者:BOSh
本文链接:http://bosh.zz.ac/posts/3722380822.html
版权声明:本文由BoSh发布,部分内容来源于网络。