博客迁移说明(2023年中秋国庆)

新增域名: carlzeng.com (状态: 测试新的CDN, 陆续迁移中…)

前后两个博客间链接

新博客地址: https://www.carlzeng.com 或者 博客迁移说明(2023年中秋国庆)
旧博客园:https://www.cnblogs.com/backuper/p/17740345.html

当前所处阶段: 新旧两个系统同时并行

博客园的优点很多,比如:SEO,对长时间历史的尊重,文章列表页面有点击量统计,
可评论,对天朝敏感词汇的过滤,合规性等等。
缺点也很多,比如:无法自定义的这些hexo优点的功能,便捷度,无法导出评论。

新的hexo优点很多,具体参加/搜索博客文章(标题:Hello Hexo)
缺点也很多,比如:维护的成本相对耗时

新旧两个系统同时并行自动化方案还没有实现。希望得高人指点
目前方案(平衡效率和耐心度):滞后性地,批量地,
把hexo中编写的新的文章(.md文件)拖放到博客园中
旧博客园的文章仅提供当时拖放(导入)的一个版本,不提供文章的后续版本更新

博客心路历程

写一遍心路历程,发布在两个blog,用于关联,衔接,和背景介绍

不知不觉已经写了15年多的博客文章,养成了随时记录随笔的习惯。我自己都很惊讶!

最早的初衷来源于TotemSuite公司老总的一句倡议:
我们每个人都要养成写个人技术博客的习惯….
(然后都链接到公司的网站上)
我要感谢这位老领导,我还要感谢博客园无偿为我服务了15年多,包容我的任性和随意性
(心情好+想起来+有时间+有内容等等叠加条件之后,
我登录博客园的管理地址,新建一篇随笔文章)
最近我慢慢感觉到时间的力量了,
另外一个事件是:搭建了软路由上的NAS(黑群晖),
然后找回并且合并了我从2004年开始记录拍摄的所有照片(包括数码相机,手机,电脑,监控等等)
借助NAS的应用,在时间轴上,我看到了:变化,感悟,感恩;
下一步我会单独写一篇分享关于个人NAS的文章,跑题太远了。
我会继续写下去,分享我的心路历程,一些人生境遇。

为什么要迁移?

博客园的文章编辑门槛太高了,与个人的编写习惯相悖,而且对于它的思路是相让用户不停的产生新的文章;
而我的习惯和思路是不停完善已有的文章(除非有很大的主题切换,有必要新起一篇文章的情况下)
旧的博客园,导入工具(导入.md文章)仅适用于导入新的文章;相同的标题也会判断为新的文章,这个很不友好。

具体迁移步骤,思路

找了很长时间关于如何把博客园中的写了15年的博客文章都迁移到hexo中来(任务始于Hello-hexo),
今天终于确认了 方案

  1. 在博客园后台的 》”备份/导出“ 功能
    把所有的博客文章都备份并下载XML(RSS),也就是说成了单个.xml的文件(我的300篇文章xml文件大小是4MB多)
  2. 在hexo本地目录运行hexo的命令
    1. 安装:$ npm install hexo-migrator-rss –save
    2. 导入本地RSS文章:$ hexo migrate rss

获取了原博客的Meta信息:
日期
内容
格式
丢失了:
图片(链接防盗)
评论
文章点击量

文章后台

hexo migrate rss 错误及解决方案

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
ERROR 
YAMLException: bad indentation of a mapping entry (1:16)

1 | title: {today} oracle 获取当前日期 netsuite-CarlZeng
--------------------^
2 | date: 2008-10-13 14:43:00
3 | tags:
at generateError (/Users/carlzeng/AppTesting/blog/node_modules/js-yaml/lib/loader.js:183:10)
at throwError (/Users/carlzeng/AppTesting/blog/node_modules/js-yaml/lib/loader.js:187:9)
....
at flush (/Users/carlzeng/AppTesting/blog/node_modules/asap/raw.js:50:29)
ERROR
YAMLException: unidentified alias "年*月*日" (1:14)

1 | title: *年*月*日 下午*点*分 日期格式的js生成-CarlZeng
------------------^
2 | date: 2008-11-17 10:02:00
3 | tags:
at generateError (/Users/carlzeng/AppTesting/blog/node_modules/js-yaml/lib/loader.js:183:10)
....
at /Users/carlzeng/AppTesting/blog/node_modules/bluebird/js/release/nodeback.js:42:21
at /Users/carlzeng/AppTesting/blog/node_modules/nunjucks/src/environment.js:28:5
ERROR
YAMLException: bad indentation of a mapping entry (1:12)

1 | title: [失效]如何使用youtube-dl下载Youtube上面的音视频,油管 ...
----------------^
2 | date: 2022-11-22 01:13:00
3 | tags:
at generateError (/Users/carlzeng/AppTesting/blog/node_modules/js-yaml/lib/loader.js:183:10)
at throwError (/Users/carlzeng/AppTesting/blog/node_modules/js-yaml/lib/loader.js:187:9)
....
at RawTask.call (/Users/carlzeng/AppTesting/blog/node_modules/asap/asap.js:40:19)
at flush (/Users/carlzeng/AppTesting/blog/node_modules/asap/raw.js:50:29)
ERROR
YAMLException: bad indentation of a mapping entry (1:19)

1 | title: [强大的ffmpeg]如何下载并转化网络M3U8文件为mp4文件-CarlZeng
-----------------------^
2 | date: 2023-01-10 03:15:00
3 | tags:
at generateError (/Users/carlzeng/AppTesting/blog/node_modules/js-yaml/lib/loader.js:183:10)
....
at flush (/Users/carlzeng/AppTesting/blog/node_modules/asap/raw.js:50:29)
ERROR
YAMLException: bad indentation of a mapping entry (1:16)

1 | title: [音乐播放器] 给 Listen 1 Chrome 版添加下载功能 版本2.27 ...
--------------------^
2 | date: 2023-02-20 03:39:00
3 | tags:
at generateError (/Users/carlzeng/AppTesting/blog/node_modules/js-yaml/lib/loader.js:183:10)
at throwError (/Users/carlzeng/AppTesting/blog/node_modules/js-yaml/lib/loader.js:187:9)
....
at RawTask.call (/Users/carlzeng/AppTesting/blog/node_modules/asap/asap.js:40:19)
at flush (/Users/carlzeng/AppTesting/blog/node_modules/asap/raw.js:50:29)

两个博客间因为原博客标题转文件名后,文件名中的‘非法字符’导致hexo migrate rss [source]中部分文章出错,
解决方法很简单:

  1. 编辑/修改一下这个.md文件名, 去除那些保留字符
  2. 重新运行 hexo g 即可校验新的文件名是否符合hexo的命名规则(避坑即可)

截止2024年中已实现的计划

最新的hexo变动会统一更新在文章:Hello hexo

声明版权(加强版权保护)

  • 本文章著作权归作者所有,任何形式的转载都请注明出处与原始链接。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 本博客所有文章除特别声明外,均遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

其他(测试进行中)

  • SDN缓存方案
  • 在配置文件中配置多个git源的deploy(发布)这样不同地区访问的速度能相对提升

如何启用carlzeng.com

不知如何设置, 添加了CDN中的域名, 可是泛域名证书好像不适于https://carlzeng.com

20241112 不知道为何被劫持到了旧的.top域名

image-20241112113607495

修改 CNAME carlzeng.com bf3f8742.sycdn.xyz 仅 DNS 自动

修改证书 https://sycdn.xyz/servers/server/settings/https?serverId=119
免费证书 / [ “carlzeng.com”, “www.carlzeng.com“ ] / 有效至2025-02-10

等待半天后查看最新状况.
https://carlzeng.com/ 目前仍然被劫持(Firefox测试)

更新 https://app.netlify.com/sites/sage-halva-bac054/domain-management
域名, 指向正确www.carlzeng.com

netlify.carlzeng.top
sage-halva-bac054.netlify.app
更新的netlify的配置, 可能能半天以后 改善这种跳转.top?

20241115 通过 CloudFlare 为根域名添加 CNAME 记录

https://dash.cloudflare.com/5f90e9cc65dcc03033f9d9f958279c53/carlzeng.com/rules

终于生效了 https://carlzeng.com 解析正常

迁移Netlify到github.io到blogcdn.net

Netlify 是在北方快许多, 而且https://sage-halva-bac054.netlify.app/是全部飘绿色(速度快)

image-20240803164842749

但是它指向的两个IP地址, 有一个在南方是无法访问的状态

image-20240803164815634

1
2
3
4
5
无法访问: 75.2.60.5
运营商 亚马逊云

可以访问: 99.83.231.61:
运营商 亚马逊云

没办法, 测试把www切换回github.io, 因为这个地址目前在南北方都正常能访问到.

Action:

  1. 修改了CNAME文件内容为: www.carlzeng.com

  2. Hexo deploy, 验证是否已提交到github

  3. Cloud flare 把www的主机CNAME, 指向chuanzhuo.github.io

  4. 验证访问www服务

第二天早上结果: 验证/测试失败.

无法从netlify(部分IP在南方挂) 切换到github
查到Github现在需要organzation, 才能新建domain

切换CNAME方案到: zr7mdvhu.cdn.blogcdn.net

20240804 切换www 的 CNAME方案到: zr7mdvhu.cdn.blogcdn.net

对比了一下 HK 和 JP 的服务器, 相对来说, 个人感觉JP的线路在我所能使用到的地方, 连通性更好, 待进一步观察/测试中…

新增Netlify(来自github.io)到sycdn.xyz

20241019 继续推进迁移工作

上传了 carlzeng.com 证书到NPM;

配置了: c.carlzeng.com, file.carzeng.com 的NPM 反向代理.

计划: 域名转入cloudflare

操作‘转移域’ https://dash.cloudflare.com/5f90e9cc65dcc03033f9d9f958279c53/domains/transfer

您当前没有可以转移的域。

以下域不能转移,原因如下:
carlzeng.com
此域在过去 60 天内进行过注册

2024年12月下旬, 等待转入cloudflare

操作说明:将域转移到 Cloudflare 的分步指南


原著笔名: Carl Zeng 《博客迁移说明(2023年中秋国庆)》
本文链接: https://chuanzhuo.github.io/blog/202310021555.html
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

个性化需求沟通 扫客服加V加群: