HTML5页面需部署到HTTP服务器才能生成可访问链接,如GitHub Pages提供免费方案;须检查路径相对性、MIME类型正确性及用户手势触发音视频播放。
HTML5 本身不是服务,只是静态文件;没有服务器托管,就不可能有对外可访问的链接。所谓“分享链接”,本质是把 index.html 及其依赖资源(js/、css/、图片等)部署到一个带 HTTP 服务的地址上,然后把这个地址发给别人。
file:// 路径不能分享——浏览器会因安全策略阻止跨文件加载资源,且别人无法访问你的硬盘路径http://localhost:5500 也不能直接分享——这是本机回环地址,外部网络不可达https://yourname.github.io/my-h5-game/ 或 https://cdn.example.com/demo.html
如果你的 HTML5 项目是纯静态(无后端、不读 Cookie、不调用需鉴权的 API),GitHub Pages 几乎零配置就能出链接。
index.html(或放在 docs/ 子目录)Settings → Pages,Source 选 Deploy from a branch,Branch 选 main / master,Folder 默认 / (root)
https://username.github.io/repo-name/ 的链接Index.html ≠ index.html;子目录资源引用要用相对路径,比如 ./js/mai
n.js,避免硬编码 http://localhost:8080/js/main.js
GitHub 访问不稳定或需中文域名时,可选语雀、腾讯云 COS、Vercel、Gitee Pages 等,但行为细节不同:
https://www.yuque.com/xxx/yyy/zzz,但不支持自定义域名,且对 history.pushState 路由(如 React Router)默认 404,需手动开启「SPA 模式」index.html 设为索引文档;CDN 回源路径要配对,否则 /page2.html 会 404https://my-h5.vercel.app;对 SPA 友好,但免费版日志只保留 24 小时CNAME 绑定(除非企业版)链接生成后立刻失效?别人打不开?大概率卡在这几个地方:
console.log 报错 net::ERR_ABORTED 或 404:检查所有 和 中的路径是否以 / 开头(绝对路径)——这会让浏览器从域名根目录找,而非当前页面所在子路径;应改用 ./js/app.js 或 js/app.js
Content-Type 是 text/html; charset=utf-8,不是 application/octet-stream(常见于 COS/Gitee 未正确配置 MIME 类型)autoplay,需用户手势触发(如点击按钮后再 play());不要依赖页面 onload 就自动播放音频路径、MIME、交互时机——这三个点没对齐,再短的 HTML5 也分享不出去。