站点镜像

主站

部署在自建服务器上,使用 GitHub Webhooks 自动同步

https://www.moonlord.cc
https://moonlord.cc
https://01.moonlord.cc
https://02.moonlord.cc

GitHub Pages 镜像站点

部署在 GitHub Pages 上,使用 GitHub Actions 自动同步

https://github.moonlord.cc

CloudFlare Pages 镜像站点

部署在 CloudFlare Pages 上,使用 Cloudflare Wrangler 手动同步

https://cloudflare.moonlord.cc

由于带宽资源和存储空间整体较优,一些大的静态资源文件仅在这个站点部署

Vercel 镜像站点

部署在 Vercel 上,使用 GitHub App 自动同步

https://vercel.moonlord.cc

Netlify 镜像站点

部署在 Netlify 上,使用 GitHub App 自动同步

https://netlify.moonlord.cc

站点 Clean URL / Pretty URL 效果

GitHub 倾向于兼容所有链接
CloudFlare 倾向于使用最短链接
Vercel 的效果依赖于 /vercel.json 文件的配置

站点 /mirror.html /about/ /about /index /index.html
主站 链接 ✅ 链接 ✅ 链接 ✅ 301 跳转 链接 ✅ 链接 ✅
GitHub 链接 ✅ 链接 ✅ 链接 ✅ 301 跳转 链接 ✅ 链接 ✅
CloudFlare 链接 ℹ️ 308 跳转 链接 ✅ 链接 ✅ 308 跳转 链接 ℹ️ 308 跳转 链接 ℹ️ 308 跳转
Vercel 链接 ✅ 链接 ✅ 链接 ℹ️ 200 无跳转 链接 ✅ 链接 ✅
Netlify 链接 ✅ 链接 ✅ 链接 ℹ️ 200 无跳转 链接 ✅ 链接 ✅

站点 HTTP Range Requests / 206 Partial Content 效果

发送 3 种 Range 请求头,测试 /favicon.ico

站点 单段范围 bytes=0-99 尾部范围 bytes=-100 多段范围 bytes=0-9,20-29
主站 ✅ 206 Partial Content ✅ 206 Partial Content ✅ 206 multipart/byteranges
GitHub ✅ 206 Partial Content ✅ 206 Partial Content ⚠️ 200 返回全文
CloudFlare ✅ 206 Partial Content ✅ 206 Partial Content ✅ 206 multipart/byteranges
Vercel ✅ 206 Partial Content ✅ 206 Partial Content ⚠️ 200 返回全文
Netlify ✅ 206 Partial Content ✅ 206 Partial Content ⚠️ 200 返回全文

站点 404 Not Found 效果

请求不存在的路径 /404/404/404.html

站点 状态码 返回内容
主站 /404/404/404.html ✅ 404 展示 /404.php、/404.html 文件,或 Nginx 默认 404 页面
GitHub /404/404/404.html ✅ 404 展示 /404.html 文件,或 GitHub 默认 404 页面
CloudFlare /404/404/404.html ✅ 404 / ⚠️ 200 展示 /404.html 文件(404),或展示首页(200)
Vercel /404/404/404.html ✅ 404 展示 /404.html 文件,或 Vercel 默认 404 页面
Netlify /404/404/404.html ✅ 404 展示 /404.html 文件,或 Netlify 默认 404 页面

CloudFlare 存在 Single-page application (SPA) rendering 机制,因此存在差异