🗺️ 一个基于开源项目深度改造的在线旅行地图平台,支持图片/视频上传、自动转码压缩、一键分享,跑在 Cloudflare R2 上,白嫖党的胜利 ✌️
🏗️ 缘起:站在巨人的肩膀上
这个项目的起点是 GitHub 上的开源项目 Your-China-Travel —— 作者 zwxll 用纯前端技术栈搭建了一个中国旅行足迹地图,简洁优雅,让人眼前一亮。
但是,作为一个喜欢折腾的人,光是拿来用怎么够?于是我对它进行了一番「深度魔改」,最终诞生了两个站点:
| 站点 | 地址 | 用途 |
|---|---|---|
| 🌍 公共地图 | map.yxp-o0o.cn | 任何人都能用的在线旅行地图 |
| 📍 我的旅行地图 | o0o-map.yxp-o0o.cn | o0o 的个人旅行足迹 |
🔧 魔改清单
1. 🎬 视频上传 + 自动转码
原项目只支持图片上传,这在短视频时代显然不够用。我新增了视频上传功能:
-
📸 图片自动转 WebP,体积减少 60%+,画质几乎无损
-
🎥 视频自动转 WebM,兼容现代浏览器,加载飞快
-
🖼️ 视频上传后自动生成封面缩略图,列表展示不再是一块黑
1 | 上传 MP4/MOV/AVI → FFmpeg 转码 → WebM + 封面图 → 存入 R2 |
2. ☁️ 存储迁移:阿里云 OSS → Cloudflare R2
原作者使用的是阿里云 OSS,老实说挺好用的,但——要钱 💸
我把它整个迁移到了 Cloudflare R2:
-
✅ 10GB 免费存储,个人项目完全够用
-
✅ 零出口流量费,这是 R2 最香的地方
-
✅ 全球 CDN 加速,访问速度不输 OSS
-
✅ 和 Cloudflare Workers 无缝集成,API 直接跑在边缘网络
说白了就是 白嫖 Cloudflare 全家桶,每月账单 ¥0,真香 😋
3. 🔗 分享功能 + 自定义域名
这是我认为最实用的功能:一键生成分享链接,把旅行规划发给朋友看。
-
📤 每条路线 / 每个标记点都能独立分享
-
🔗 分享链接支持自定义域名前缀,格式为
xxx-map.yxp-o0o.cn -
👁️ 每个分享页都能查看被浏览次数,满足小小的虚荣心
-
🔄 分享页内容跟随主页实时更新,不需要重新生成链接
想象一下:做完一份旅行攻略,链接发给朋友,他们点开就能看到你的完整路线规划——是不是很有仪式感?
⏳ 开发历程
说实话,这个项目前前后后折腾了挺久的。倒不是说技术有多难,主要是:
-
🔸 白天上班 ,只有晚上和周末能搓代码
-
🔸 R2 的 API 和 OSS 差异不小,适配花了不少时间
-
🔸 视频转码的 FFmpeg 调参是个玄学活
-
🔸 分享功能的鉴权和防滥用要想清楚
但好在最终还是搞出来了,上线那一刻的成就感懂的都懂 😎
🚧 未来计划
目前只是 v1.0,后续还有很多想法:
当然,也会持续关注原作者的更新,看看有什么新思路可以融合进来。
🔗 相关链接
| 项目 | 链接 |
|---|---|
| 📖 开源原作 | zwxll/Your-China-Travel |
| 🌍 公共地图 | map.yxp-o0o.cn |
| 📍 我的旅行地图 | o0o-map.yxp-o0o.cn |
💡 如果你对这个项目感兴趣,或者有什么好点子,欢迎来 GitHub 找我交流!