Craft Cloud 是 Pixel & Tonic 为 Craft CMS 提供的无服务器托管平台,本技能聚焦 Cloud 环境与自托管(Forge、Servd 或裸机)的差异。
用途:帮助在 Craft Cloud 上配置与部署 Craft 项目,以及将自托管站点迁移到 Cloud。
主要能力与内容:craft-cloud.yaml 配置(php-version、node-version、node-path、npm-script、artifact-path、app-path、webroot、cache 规则、redirects、rewrites);Git 推送触发的 Build → Migrate → Release 流水线,构建上限 15 分钟;craftcms/cloud 扩展(App::isEphemeral()、Path 服务、cloud.esi() Twig 助手、cloud/up);边缘图片变换(Cloudflare Images);通过 cache.rules 实现边缘静态缓存与基于标签的失效;Cloud 文件系统(用户资源需用 Cloud 捆绑的 S3 型文件系统,资源路径必须在 assets/ 子路径下);无头应用与请求签名(RFC 9421,$CRAFT_CLOUD_SIGNING_KEY);域名与自动 SSL;控制台命令运行器与每小时最低频率的定时任务;插件 Cloud 兼容清单;自托管迁移流程。
使用方式:按任务加载对应参考文件,如配置用 references/config-file.md,部署用 references/deploy-pipeline.md,缓存与边缘用 references/caching-and-edge.md,插件兼容用 references/plugin-development.md。
限制:仅支持 MySQL 8.0 和 Postgres 15(不支持 MariaDB);不支持 tablePrefix、.htaccess/nginx 配置、SSH、内置邮件(需自带 SMTP/Postmark/SES/Resend);队列任务由 Cloud 自动处理,单任务上限 15 分钟;控制台命令参数上限 255 字符、超时 15 分钟;生产环境外注入 robots.txt Disallow: /;响应 6MB、请求头 16KB、请求超时 60 秒、上传 200MB 等上限;无法从 fork 的仓库部署;仅支持按分支环境而非按 PR 预览。具体配置细节和命令以各引用文件与官方文档为准。