
要在 Next.js 博客中添加 Giscus 评论区,只需三步:
1️⃣ 在 GitHub 上安装 Giscus App;
2️⃣ 打开 giscus.app 选择仓库并生成脚本;
3️⃣ 将生成的 <script> 粘贴到文章模板底部。
部署后,访客即可使用 GitHub 账号在博客下方评论互动。
前言
在尝试了 Hugo 与 Notion 的博客方案后,我决定自己动手搭建一个博客项目。
项目仓库地址 👉 https://github.com/836108186/blog_zxyj
基于 Tailwind + Next.js Starter Blog 完成基础功能后,我发现:
没有评论区的博客,总感觉少了点交流的温度。
于是我对比了多种评论系统(如 Disqus、Utterances、Gitalk 等),最终选择了 Giscus —— 一个基于 GitHub Discussions 的无后端评论方案。 以下是我为博客启用 Giscus 的完整记录与避坑指南。
一、创建支持 Giscus 的 GitHub 仓库
Giscus 依托 GitHub Discussions,因此你必须启用 Discussions 功能。

Discussions 启用后,Giscus 才能正常同步评论内容。
二、安装 Giscus App
Giscus App 是连接 GitHub Discussions 与你的博客页面的“桥梁”,用于授权读写评论。
要让访客能发表评论,必须先在 GitHub 上安装 Giscus App。
- 打开链接:https://github.com/apps/giscus
- 点击 Install(若已安装则显示 Configure)
- 选择:
- 仅安装在指定仓库(推荐:选择你的博客仓库)
- 或 安装在所有仓库(如果有多个博客项目)
- 安装后,可在 GitHub → Settings → Applications 中重新配置。
完成授权后,你的博客即可通过giscus与仓库内的 Discussions 正常通信。
三、生成并嵌入 Giscus 脚本
在 giscus.app 生成脚本,将其插入文章模板底部,即可渲染评论区。
- 访问 https://giscus.app/zh-CN;
- 选择仓库;
- 选择 Discussion 分类(如 “General”);
- 复制自动生成的
<script>代码; - 将其粘贴进博客模板底部
示例代码:
<script src="https://giscus.app/client.js"
data-repo="你的GitHub用户名/博客仓库名"
data-repo-id="仓库ID"
data-category="Github Discussions分类"
data-category-id="分类ID"
data-mapping="pathname"
data-strict="0"
data-reactions-enabled="1"
data-emit-metadata="0"
data-input-position="bottom"
data-theme="preferred_color_scheme"
data-lang="zh-CN"
crossorigin="anonymous"
async>
</script>

排查常见问题
| 问题 | 原因 | 解决方案 |
|---|---|---|
| 显示提示“giscus app 未安装” | 没有给目标仓库安装 Giscus App | 按上面第一步安装 |
| 评论框加载为空白 | 没启用 Discussions 功能 | 仓库 Settings → 勾选 Discussions |
| “Error: Bad credentials” | repo、repo_id 配置不匹配 | 到 giscus.app 重新生成配置 |
| 页面加载慢或被屏蔽 | GitHub API 被防火墙拦截 | 可考虑用代理或 Vercel 辅助中转 |
推荐阅读
- Markdown 写作方法与技巧:轻量标记语言实战
全面梳理 Markdown 的标准语法(CommonMark)与扩展语法(GFM),从段落、标题到代码块与表格,附常见渲染差异与不踩坑提示,帮助你高效写作与博客排版。
