我正在尝试设置我的 jekyll 网站,该网站存储在 GitHub 上,并通过内容管理系统 (CMS) 托管在 Github 页面上。目前,我必须创建新的 Markdown 文件并推送到 GitHub 才能添加新帖子。我正在尝试使用 DecapCMS,但说明包括 netlify 托管特定步骤,即使它应该独立于 netlify。
描述错误 我按照 jekyll 设置说明进行操作,但我的网站仍然无法使用 decap CMS。 我按照这里的说明进行操作 jekyll 指南 和此处- GitHub 后端 设置 GitHub 后端。
我按照以下步骤设置身份小部件 我已经设置了机密并获取了我的项目的客户端 ID,但在以下部分:
netlify 文档中这么说
当您在 GitHub 上完成应用程序注册后,您需要将客户端 ID 和客户端密钥添加到您的 Netlify 站点:
问题是该网站不是托管在 Netlify 上,因为它位于 Github 页面上。我以为我不必更改托管提供商。但其余步骤需要 Netlify 站点在 Netlify UI page 中执行这些步骤。单击链接会将我带到 Netlify 上托管的其他项目之一,以便我可以输入客户端 ID 和密码。
转到站点配置 > 访问和安全 > OAuth 在身份验证提供程序下,选择安装提供程序。 选择 GitHub 并输入之前的 Client ID 和 Client Secret,然后保存。
所以这是我不得不停止遵循 DecapCMS 文档上的教程的地方。我觉得我快到了,但只是错过了一些东西。
我尝试寻找替代方案并找到了外部 OAuth 部分,但它没有使用 Github 页面进行 jekyll 设置 [https://decapcms.org/docs/external-oauth-clients/](外部 OAuth)
尽管如此,我尝试了无服务器选项,但这让我更加困惑。如果有人知道如何使用它,我将不胜感激您的帮助。
重现
预期行为
能够在我的 Github 页面网站上使用 Decap CMS,而无需更改托管提供商
截图
这是我进入 /admin 路线时看到的。
然后到这一步就失败了
适用版本:
CMS配置
https://github.com/RDjarbeng/RDjarbeng/blob/main/admin/config.yml
其他背景
网站是我的个人网站,位于:
https://rdjarbeng.github.io/RDjarbeng/ 在 GitHub 上:
如果您希望能够在 mysite/admin 的 github 页面域中使用 CMS,则必须设置您自己的身份验证器客户端。
目前还不太清楚如何在DecapCMS中做到这一点。另一种方法是使用类似的 CMS; Sveltia CMS 提供了从 DecapCMS 迁移的快速方法,并且不使用 Netlify 识别。
迁移到 Sveltia CMS 后,它还有一个 sveltia 身份验证器,您可以将其与 Cloudflare 一起使用来设置身份验证服务。在此处查找步骤。
这就是我能够在我的 GitHub 页面网站上使用 CMS 而无需使用 Netlify 的原因。身份验证是通过 GitHub 完成的。