Contentful 官网截图
Contentful 官网截图

Contentful 是什么?

Contentful 是无头的内容管理系统, Headles Content Management System。 Headless CMS 提供了一种创作内容的方法,但它不是将内容耦合到特定输出(如网页呈现,如传统的在 WordPress上写文章发报到网站上) 它提供的是内容创作者可以像之前一样写文章,而开发者可以通过 API 方式获取内容,这些可以实现跨渠道交付内容。

Contentful 在国内能用吗?

Contentful 团队给出的答覆
Contentful 团队给出的答覆

大概意思是: Contentful 团队暂时没有”解决方案”,更多可以参考 原文

再加上 Contentful 在中国大陆没有 CDN 节点,和中国内容控制的法例,在国内要正规和流畅使用 Contentful 是不可能

Contentful 的开源替代方案: Strapi

Strapi 官网截图
Strapi 官网截图

Strapi 是什么?

Strapi 是基于 Javascript 开发的开源的无头的内容管理系统。让内容创作者可以在一个可视化界面中创作内容,而开发者可以通过 API 调取内容,实现跨渠道交付。

21云盒子提供一键托管,免运维的 Strapi Server 作为 Contentful 的国内替代方案

如何创建一个 Strapi Server?

  1. 注册成为 21云盒子会员
  2. 创建一个 PostgreSQL数据库
  3. Fork Strapi Server 启动模板
  4. 在 21云盒子 上创建一个 云服务, 并允许21云盒子访问你的代码库
  5. 用下面配置进行创建
环境 Node 12.19
构建命令 yarn && yarn build
启动命令 yarn start

在选择配置方面,Strapi官方文档建议 至少使用 2GB 内存和 1核CPU 的服务器,如果选择较少内存的机器进行部署,有可能会导致部署失败。

进阶配置 进行环境变量配置

环境变量Key 环境变量Value
NODE_ENV development
DATABASE_URL 在云数据库控制台中点 数据库URL 获取
JWT_SECRET 随机生成32位字符
ADMIN_JWT_SECRET 随机生成32位字符

其他环境变量的配置可以参考 Strapi官方文档

随机生成 32 位字符方法: 在 命令行 粘贴一下以下命令:

echo $(base64 /dev/urandom | head -c32)

Strapi Server 部署成功后,可以到 服务名.21yunbox.com,进行访问。当部署成功后,你会看到以下的效果。

Strapi Server 部署成功
Strapi Server 部署成功

其他相关的博客: