跳到主要内容

静态网站托管

云开发为开发者提供静态网页托管能力,支持 HTML、CSS、JavaScript、字体等静态资源的分发。底层基于腾讯云对象存储 COS 和全球 CDN 网络,为您的网站提供高性能、高可用的访问体验。

前置条件

在使用 CLI 操作静态网站服务前,请确保:

  1. 开通静态网站服务:前往 云开发控制台 开通静态网站服务
  2. 手动开通:静态网站托管服务需要在环境创建后单独开通
提示

目前静态网站托管功能仅在腾讯云云开发控制台支持,小程序 IDE 控制台暂不支持。

部署网站

全量部署

使用 tcb hosting deploy 命令可以将当前目录下的所有文件部署到静态网站。

# 进入构建目录
cd docs

# 部署当前目录下的所有文件
tcb hosting deploy -e envId

指定文件部署

您可以指定特定的文件或文件夹进行部署:

# 基本语法
tcb hosting deploy <localPath> [cloudPath] -e envId

参数说明:

  • localPath:本地文件或文件夹路径
  • cloudPath:云端目标路径(可选,默认为根目录)
  • envId:环境 ID

示例:

# 将 hosting 目录下的所有文件部署到根目录
tcb hosting deploy hosting -e envId

# 将本地 index.html 部署到云端根目录
tcb hosting deploy ./index.html -e envId

# 将 static 目录下的 index.js 部署到云端 static/index.js
tcb hosting deploy ./static/index.js static/index.js -e envId

部署限制

  • 文件大小:单个文件最大支持 50TB
  • 文件数量:无限制
  • 网络优化:如遇到大量文件上传报错 { message: 'socket hang up', code: 'ECONNRESET' },请先执行:
    export COS_SDK_KEEPALIVE=false

SPA 应用配置

Vue History 模式

使用 Vue Router 的 history 模式时,需要在 静态网站控制台 的设置页面配置错误页面为应用的入口页面(通常是 index.html)。

管理网站

查看服务信息

查看静态网站的状态、访问域名等详细信息:

tcb hosting detail -e envId

查看文件列表

列出静态网站存储空间中的所有文件:

tcb hosting list -e envId

删除文件

删除静态网站中的指定文件或文件夹:

# 删除指定文件或文件夹
tcb hosting delete <cloudPath> -e envId

# 删除所有文件(cloudPath 为空)
tcb hosting delete -e envId

示例:

# 删除根目录下的 index.html
tcb hosting delete index.html -e envId

# 删除 static 文件夹及其所有内容
tcb hosting delete static -e envId

# 清空整个静态网站
tcb hosting delete -e envId

路径说明

路径格式

  • localPath:本地文件或文件夹路径

    • 格式:目录/文件名
    • 示例:./index.jsstatic/css/index.css
  • cloudPath:云端文件或文件夹的相对路径

    • 格式:目录/文件名(相对于根目录)
    • 示例:index.jsstatic/css/index.js

跨平台注意事项

Windows 系统
  • localPath:使用系统路径格式,通常使用 \ 分隔符
  • cloudPath:统一使用 / 分隔符,与操作系统无关

常见问题

上传失败处理

如果遇到网络连接问题导致上传失败,可以尝试:

# 关闭 SDK 长连接
export COS_SDK_KEEPALIVE=false

# 然后重新执行部署命令
tcb hosting deploy -e envId

域名访问

部署完成后,您可以通过以下方式访问网站:

  • 在控制台查看分配的默认域名
  • 配置自定义域名(需要 ICP 备案)