Sat Oct 10 2026
...
如何在 2026 年从 OpenWeb 迁移到 FastComments
! 本文包含技术术语
本指南面向目前使用 OpenWeb 的产品和工程负责人以及社区经理,帮助他们制定迁移计划。它会遍历每个 OpenWeb 界面,列出对应的 FastComments 方案,并明确指出哪些没有 1:1 对应。
为什么现在
2026 年 9 月 30 日,特拉维夫地区法院应其债权人 Mars Growth Capital 的请求,任命临时接管人管理 OpenWeb,Mars Growth Capital 对公司资产和账户拥有第一顺位留置权,并正准备对 OpenWeb 的以色列资产、银行账户和知识产权执行留置(Calcalist, Sept 30</a)。第二天(Calcalist, Oct 4</a)任命了临时受托人 Adv. Ehud Gindes。2026 年早些时候,OpenWeb 最大的客户之一 Microsoft 结束合作,并因流量争议(OpenWeb 否认)扣留付款(Calcalist, Sept 28</a)。
OpenWeb 表示平台仍在运行。法院监督、债权人对您评论小部件所依赖的知识产权进行留置、以及受托人负责保值,这些都不是出版商希望在核心互动界面上面对的情况。如果您尚未完整导出数据,请先执行此操作,今天就完成,然后再继续本指南的其他步骤。
开始前需要准备的事项
在动代码之前先收集以下内容:
- 您的 OpenWeb 评论导出文件。 OpenWeb 提供 Export API(v4),生成压缩的 CSV 文件,每文件最多 100,000 条评论,时间窗口最长一个月,下载链接在一周后失效(OpenWeb docs)。请求所需的所有时间窗口并安全保存文件。如果您的 OpenWeb 联系人过去提供过管理员面板的 CSV 导出,也请保留。FastComments 导入器会读取 OpenWeb CSV 中的列,如
id、post_id、parent_comment_id、user_name、user_display_name、content、written_at、message_status、likes_count、dislikes_count、reports_count和url。 - 您的 Spot ID 和文章 ID 列表。 您传递给启动器的每个
data-post-id将成为 FastComments 的 URL ID。如果您的文章 ID 来自 CMS,请记录其生成方式,以便在 FastComments 端使用相同值。 - 您的 SSO 用户列表。 具体包括在 OpenWeb 注册时使用的
primary_key和user_name。导入时会根据用户名匹配评论作者,因此需要在 FastComments SSO 负载中使用相同的用户名。 - 您的版主列表及角色。 包括管理员、版主和记者账号,以及各自负责的版块。
- 您的审核配置。 包括站点范围的策略(全部批准、发布后审核、需要批准)、文章级别的覆盖、受限词列表、被静音和被封禁的用户。
- 自定义 CSS 与主题设置。 将管理员面板中所有自定义内容导出,以便在 FastComments 小部件定制页面中重建。
- 启动器在模板中的位置,包括任何使用 Reactions、Topic Tracker、Spotlight、通知铃或独立广告但不含对话的页面。
AI 辅助迁移
FastComments 提供 LLM Kit 和 MCP 服务器以加速迁移。
OpenWeb 文章 ID 与 FastComments URL ID 的映射
FastComments 将评论线程绑定到 urlId。默认情况下,URL ID 为清理后的页面 URL,但您可以将其设为任意字符串,这正是 OpenWeb 导入器的做法:它读取 post_id 列,并将其用作每篇文章的 FastComments URL ID。同时会将 url 列存为显示 URL,以便审核链接和通知邮件指向正确页面。
因此模板规则为:在 OpenWeb 中使用 data-post-id="POST_ID" 和 data-post-url="ARTICLE_URL" 的位置,改为在 FastComments 中使用 urlId: 'POST_ID' 和 url: 'ARTICLE_URL'。导入的线程会与现有线程直接对应,无需重定向或 URL 重写。参见 URL ID 文档。
如果您更倾向于以后按 URL 而非文章 ID 来键控线程,可先完成导入,然后在 “管理数据” 下使用 “迁移评论” 工具批量将线程从文章 ID 移动到 URL。
功能映射表
| OpenWeb | FastComments | 备注 |
|---|---|---|
| Conversation with real-time updates | Comment widget with live commenting | 默认实时。新评论会折叠在 “显示 N 条新评论” 按钮后,或使用 showLiveRightAway 立即显示。 |
| Likes and dislikes on comments | Up and down votes | 导入会保留 likes_count 与 dislikes_count。心形样式和 “禁用投票” 为可配置选项。 |
| Reactions (article-level icons) | Page Reacts | 页面上可配置的图标集合,按用户记忆。 |
| Replies and threading | Threaded replies, unlimited depth | maxReplyDepth 限制嵌套层级。 |
| Sorting: best, newest, oldest | Most Relevant, Newest First, Oldest First | defaultSortDirection 在站点或 URL 模式下设定默认排序。 |
| User profiles | User profiles | 头像、简介、徽章、积分、活动、私信。支持 SSO 用户。 |
| Author Badge | displayLabel, isAdmin, isModerator, badges |
在 SSO 负载中设置。无需后端查询。 |
| Pinned Live Blog updates, highlighted comments | Pin and Unpin on any comment | 版主可在小部件或仪表盘中置顶。AI 代理模板可自动置顶最高投票评论。 |
| In Conversation Polls | Polls on comments | 2‑10 选项、结束日期、隐私模式、创建者限制。 |
| Ask Me Anything formats | No dedicated product | 以普通线程实现,作者的 SSO 用户带 displayLabel,并将提问置顶。 |
| Live Blog | No 1:1 equivalent | Live Chat 小部件和聊天模式评论可用。编辑式实时博客仍在 CMS 中实现。 |
| Topic Tracker (follow topics and authors) | Page subscriptions | 用户关注页面,而非主题或作者。无跨文章关注。 |
| Notification Bell | Notification bell in the widget | 回复、提及、线程活动、投票、订阅、徽章、私信等。 |
| Email notifications | Email notifications with templates | 通过 SSO 标记的用户可自行选择。自定义模板、品牌发件人。 |
| SSO handshake (codeA/codeB) | Secure SSO (HMAC-SHA256 payload) | 无注册用户调用。服务器端签名负载后传给小部件。 |
| Third-party SSO (Auth0, Gigya, Piano) | Secure SSO after your provider authenticates | 同样的负载。后端在用户登录后签名。 |
| Identity (OpenWeb registration screens) | Magic-link login, Simple SSO | 读者通过邮件链接登录,无密码。 |
| Moderation policy per article | Customization rules per URL ID pattern | 审核模式、垃圾过滤等可按 */section/* 模式变化。 |
| Aida AI moderation | Spam classifiers, LLM based filters, image moderation, AI Agents | 代理在干运行模式下启动,可要求人工批准。 |
| Restricted words | Word blacklist customizable by locale | 默认约 450 条短语,可编辑。 |
| User muting | Block User | 在评论菜单中对单个读者进行屏蔽。 |
| Bans | Bans | 永久、限时、影子、IP‑哈希、别名感知等多种方式。 |
| Moderation Panel | Moderate Comments dashboard | 过滤、批量撤销、分组、摘要邮件、一键批准。 |
| Notification Webhook | Webhooks | 评论创建、更新、删除。无用户级别的通知 webhook。 |
| Engagement dashboard | Analytics | 在线用户、热门页面、页面加载、评论、投票、每日账户统计。无广告收入报告。 |
| In-conversation ads, Standalone Ad | None | FastComments 不投放广告。您自行保留广告系统。 |
| Social Reviews (star ratings) | Ratings and Reviews | 同一账户下的独立产品。 |
| Popular in the Community | Recent Discussions and Top Pages widgets | 基于评论活动的循环推荐。 |
| Comment Counter | Comment count widgets | 单个或批量。 |
| Export Comments API | CSV export, API, webhooks | 随时从仪表盘导出。 |
| Export and Delete User Data (GDPR/CCPA) | Account and data deletion, EU region | eu.fastcomments.com 将数据保存在欧盟。提供 DPA。 |
| Android, iOS, React Native SDKs | Android, iOS, React Native SDKs | 原生 UI、SSO、实时更新、线程、审核操作。 |
| Launcher, Virtual Pages, React SDK | Embed script, fcConfigs, React, Vue, Angular, SolidJS libraries |
update() 与 destroy() 适用于 SPA。 |
本节其余部分将逐组详细说明。
Conversation, Votes and Reactions
OpenWeb 的 Conversation 是实时线程。FastComments 评论小部件同样实时:评论、编辑、删除、投票和审核操作会推送给所有查看该线程的用户(docs)。默认情况下,其他人的新评论会折叠在 “显示 2 条新评论” 按钮后,以免页面跳动。实时活动可通过 showLiveRightAway 立即渲染,若希望新评论向下滚动则使用 newCommentsToBottom。
点赞与点踩对应上下投票。导入器会保留每条评论的计数。如果您的社区习惯单一点赞,可在小部件定制页将投票样式切换为心形。投票也可以完全关闭。
OpenWeb Reactions 是文章级别的图标小部件(OpenWeb docs)。FastComments 对应的是 Page Reacts:可配置的表情图标集合,附加在评论小部件上,按页面和用户记忆(docs)。Reaction 计数不在 OpenWeb 评论导出中,因此在 FastComments 中从零开始。
排序直接映射。OpenWeb 的 data-sort-by 值 best、newest、oldest 对应 FastComments 的 Most Relevant、Newest First、Oldest First。可通过 defaultSortDirection(MR、NF、OF)在代码或定制规则中设定默认。读者可在小部件中自行切换。
data-read-only="true" 对应 readonly: true,会阻止新评论、投票、编辑和删除。data-post-staleness-days 没有直接等价,但可通过定制规则对特定 URL ID 模式应用 readonly,亦可在模板中根据文章年龄切换。data-messages-count 为页面大小,可在小部件定制页设置为 10‑200 条评论。
Replies and Threading
FastComments 默认支持无限嵌套;maxReplyDepth 可限制层级(1 为两层平面结构)。OpenWeb CSV 包含 parent_id 与 parent_comment_id 列。导入器读取 parent_comment_id 并在完整深度上重建回复树,因此对回复的回复仍会嵌套在其直接父级下,保留作者、时间戳、投票、标记计数和审核状态。即使回复出现在父评论之前,或父评论来自更早的导出窗口,仍能正确关联。若某条回复的父评论在所有导出中缺失,则该回复会成为顶层评论。OpenWeb 的消息 ID 会存储在每条评论上,后续重新导入旧的平面导入时会在原位匹配。
User Profiles and Badges
FastComments 用户(包括 SSO 用户)拥有头像、显示名、简介、社交链接、徽章、积分、评论计数、公开活动流和私信功能(docs)。活动、个人资料评论和私信面板可在 SSO 负载中或全局配置中单独关闭。
OpenWeb 的 Author Badge 需要调用 GET /sso/v1/user/{primary_key} 并将返回的 ID 放入 data-author-id。在 FastComments 中,只需在用户的 SSO 负载中设置 displayLabel: 'Author'(或任意最长 100 字符的标签),以及 isAdmin 或 isModerator 标记即可。该标签会在每条评论旁边渲染。若需更丰富的系统,可在 “Customize → Badges” 中配置图像或文字徽章,自动在阈值(评论数、赞数、置顶评论、资深状态、回复速度)触发,或手动分配,并可通过 SSO 负载的 badgeConfig 设置(docs)。
Pinned Comments, Polls and Q&A
任何版主都可以在小部件的评论菜单或审核仪表盘中 Pin 或 Unpin 评论。置顶评论会实时推送给所有线程阅读者。若希望自动化,可使用 AI Agents 中的 Top Comment Pinner 模板,在评论达到投票阈值后自动置顶(docs)。
OpenWeb 的 In Conversation Polls 允许在顶层评论中附加 2‑4 选项的投票。FastComments 的投票同样附加在评论上,支持 2‑10 选项、可选结束日期、结果隐私(匿名、仅管理员、全部可见)以及 “投票后才能查看结果” 模式。您可以设置谁可以创建投票(禁用、仅管理员和版主、所有人)以及匿名读者是否可投票。投票同样通过公共 API 暴露,便于从 CMS 创建。
OpenWeb 曾提供 Ask Me Anything(AMA)形式。FastComments 没有专门的 Q&A 产品,实际做法是将其视为普通线程:在专用 URL ID 上创建线程,客人的 SSO 用户携带 displayLabel,将介绍评论置顶,读者在顶层评论中提问,客人在同一线程中回复,并通过提及和回复通知将人们拉回。窗口关闭后可使用 noNewRootComments 只允许回复。
Community Spotlight(OpenWeb 的邮件收集、计数和重定向卡片)在 FastComments 中没有对应。小部件支持通过 headerHTML 在评论输入框上方自定义 HTML,以实现号召性用语,但不提供邮件捕获表单。
Live Blog
FastComments 没有 Live Blog 产品。OpenWeb 的 Live Blog 是编辑类产品:记者在管理员面板中发布带链接、推文和视频的更新,读者实时跟随(OpenWeb docs)。
FastComments 为实时覆盖提供的是读者侧:Live Chat 小部件 (embed-live-chat.min.js) 用于流式聊天,评论小部件可在聊天模式下使用 showLiveRightAway 加 newCommentsToBottom 与实时报道并行。编辑更新仍需出版商在 CMS 或专用实时博客工具中完成,然后在其下方嵌入 FastComments 进行讨论。评论中支持 YouTube、SoundCloud 等媒体嵌入,便于工作人员以富媒体形式发布更新。
Topic Tracker, Notifications and Email
OpenWeb 的 Topic Tracker 让读者关注基于页面元数据的主题和作者,并在匹配新文章时收到通知(OpenWeb docs)。FastComments 没有跨文章的主题或作者关注功能。读者可通过通知铃订阅单个页面,并根据订阅选择每分钟、每小时或每日摘要。若跨文章关注对您的留存至关重要,请告知我们,此功能已列入路线图。
通知铃的其余映射保持一致。小部件的铃会在未读计数变红并列出:对您的回复、您参与的线程回复、提及、对您评论的赞、已订阅页面的活动、徽章奖励和私信(docs)。应用内通知通过 WebSocket 实时推送。回复和提及邮件每分钟发送一次,仅针对已批准的评论。
对于 SSO 用户,在负载中传入 optedInNotifications 与 optedInSubscriptionNotifications,FastComments 会在下次页面加载时更新其偏好。邮件需要在负载中提供电子邮件地址。邮件模板可在 “Customize → Email Templates” 中按类型和语言编辑,并支持使用您自己的域名并配置 DKIM。版主和管理员可收到每日、每周或每月摘要,内含一键批准、回复和垃圾链接。
OpenWeb 的 Notification Webhook 会将每位用户的通知事件(replied-message、liked-message、topic-by-keyword 等)POST 到您的端点。FastComments 的 webhook 只覆盖评论资源:创建、更新、删除,并可订阅任意数量的端点(docs)。如果您之前使用通知 webhook 将事件喂入自建邮件系统,需要改为监听评论事件,或让 FastComments 直接发送邮件。
SSO: From codeA/codeB to a Signed Payload
OpenWeb 的握手包括六步:等待 spot-im-api-ready,OpenWeb 生成 codeA,您的客户端将其发送至后端,后端确认用户并调用 GET https://www.spot.im/api/sso/v1/register-user?code_a=...&access_token=...&primary_key=...&user_name=...,OpenWeb 返回 codeB,客户端再将 codeB 交回 OpenWeb(OpenWeb docs)。登出调用 window.SPOTIM.logout()。
FastComments 安全 SSO 没有往返请求,也不需要您侧的新端点。当为已登录用户渲染页面时,后端序列化用户信息,Base64 编码后使用 HMAC‑SHA256 并使用您的 API secret 进行签名。小部件在请求中携带负载,FastComments 验证签名(docs)。Node 示例:
时间戳为 epoch 毫秒,若超过两天则被拒绝。对未登录读者,省略这三个签名字段,仅传 loginURL(或 loginCallback 函数),小部件会显示登录提示而非编辑框。完整的 Node、Java、PHP 示例位于 代码示例仓库。
用户在首次页面加载时创建。不会批量注册任何人。因为 OpenWeb 导入器通过 user_name 匹配评论作者,若 SSO 负载携带相同 username,用户首次加载线程时即可拥有其导入的评论,并可随后编辑或删除。FastComments 也提供 SSO 用户 API,供您预先创建用户。
每次发送负载时,FastComments 会根据负载更新用户记录,因此您侧的显示名或头像变更会在下次页面访问时同步。将字段设为 null 可清除对应信息。
如果您使用 OpenWeb 的第三方 SSO(Auth0、Gigya、Piano)通过 window.SPOTIM.startSSOForProvider,FastComments 的流程相同:在提供商完成身份验证后,后端构建并签名负载。FastComments 侧无需特定的提供商集成配置。
另外两种选项:Simple SSO 从客户端直接传递未签名的用户对象,适用于没有后端的平台,并在有邮箱时标记为已验证(docs)。SAML 2.0 通过 Okta、Azure AD 或 ADFS 将员工登录到 FastComments 仪表盘本身,支持角色映射,仅在企业计划中提供(docs)。
Moderation
OpenWeb 的每篇文章审核策略 API 包含四种值:spot_policy、approve_all、publish_and_moderate、require_approval。FastComments 在 “Moderation Settings” 中配置相同行为:自动批准开关、仅首次评论需要批准、仅已验证(登录或 SSO)评论自动批准。规则可全站或针对 */politics/* 等 URL ID 模式应用,以实现分区策略。所有评论(无论是否批准)都会进入 “Moderate Comments” 仪表盘,因此默认视图为 “发布后审核” 模式(docs)。
导入会保留审核状态。OpenWeb 的 message_status 为 approved 时导入为已批准并已审核;rejected 导入为垃圾并已审核;其他状态导入为未批准未审核,出现在您的审核队列中。reports_count 成为评论的标记计数。
FastComments 的自动审核采用分层方式,而非像 Aida 那样的单一系统:
- 垃圾分类器,持续训练,可作为所有租户共享模型或专属模型,具备对长期或常被置顶用户放宽过滤的信任因子。
- 可选的 LLM 垃圾检查(Flex 计费),提供开源模型如 GLM‑5.3。
- 图片内容审核,支持低、中、高灵敏度。
- 本地化词黑名单,约 450 条默认短语,可编辑,匹配时用星号遮蔽。这里放置您在 OpenWeb 中的受限词。
- 标记阈值,达到 N 次报告后自动隐藏评论。
- 重复及近似重复消息防护,始终开启。
- AI Agents:事件驱动的代理,具备明确的工具白名单(标记垃圾、批准、锁定、置顶、私信警告、封禁、授予徽章、回复)。每个代理默认干运行,敏感工具可通过人工批准解锁,所有操作均记录理由和置信度分数。
OpenWeb 的用户静音 API 允许一个 SSO 读者静音另一个。FastComments 对应的是评论菜单中的 “Block User”,对任何已登录读者均可使用。封禁是版主操作:永久或设定时长,可选影子封禁(用户仍看到自己的评论,其他人看不到),可基于哈希 IP,且支持邮箱别名合并。封禁列表可按邮箱、姓名、版主及触发封禁的评论搜索。
“Moderate Comments” 仪表盘支持过滤(待审核、需批准、垃圾、已标记、来自封禁用户)和全文搜索,批量操作支持撤销和暂停,“全选匹配项” 适用于大队列,审核分组让您的体育编辑部仅看到体育线程,单条评论日志展示邮件是否发送的原因,且可生成可共享的过滤链接。版主仅拥有仪表盘权限,不能更改设置或导入数据。
Analytics
FastComments Analytics 显示当前在线用户、每页在线人数、按评论数或实时阅读人数的热门页面,以及每日页面加载、评论、投票和新账户统计(docs)。版主统计单独呈现。计数接近实时,最多延迟一分钟,且每次页面加载都会计入,而非抽样。
您不会在此看到任何广告填充、CPM 或收入数据,因为 FastComments 不投放广告。如果您之前依赖 OpenWeb 仪表盘进行参与度到收入的报告,这部分报告将转移到您自己的广告系统。
Monetization
OpenWeb 在 Conversation 内外投放广告,并提供 Standalone Ad 单元,需通过您的 OpenWeb 联系人设置活动(OpenWeb docs)。FastComments 不在小部件中投放广告,不参与收入分成,也不加载第三方广告或跟踪脚本。小部件本身是一个 iframe,您在其上方和下方的广告位由您自行管理。
权衡是明确的:您失去 OpenWeb 为您支付的费用,却获得固定、可预测的成本以及不会向页面添加广告请求的小部件。Flex 与 Pro 计划会去除品牌标识,Pro 与 Enterprise 计划提供白标。
Data Export and Privacy
您可以随时从 FastComments 仪表盘导出所有评论数据为 CSV,日期采用 UTC ISO 格式,同样的数据也可通过 API 获取。Webhook 支持持续同步。导入文件在导入完成后会立即从 FastComments 删除。
针对 GDPR 与 CCPA,OpenWeb 提供导出与删除 API,已删除用户的评论会转移到随机访客账号(OpenWeb docs)。FastComments 支持数据导出与删除请求,提供数据处理协议(DPA),并在 eu.fastcomments.com 运行独立的欧盟部署,数据仅在欧盟节点复制。若您的读者在欧洲,请在该区域创建账户。欧盟区域的 AI 代理封禁始终需要人工批准,以满足 DSA 第 17 条。
全球部署的评论数据会在包括新加坡在内的多个地区复制,且小部件通过 FastComments 自有的 DNS 与 CDN 提供。嵌入脚本压缩后约 35 KB。
Mobile SDKs
OpenWeb 提供 Android、iOS 与 React Native SDK,涵盖 Conversation、Articles、Authentication、Notifications、Reactions 与 In Conversation Polls。FastComments 提供原生 Android、iOS 与 React Native 库,支持线程评论、WebSocket 实时更新、安全 SSO、投票、提及、图片上传、审核操作(标记、置顶、锁定、封禁)、主题定制、直播聊天模式以及社交动态组件。欧盟区域通过配置标志启用。由于没有广告,亦不存在单独的广告 SDK。
Embed and SPA Integration
OpenWeb 启动器与容器代码:
FastComments 对应代码:
您的租户 ID 可在 凭证页面 获取。data-article-tags 没有对应功能,因为没有主题关注;评论中的标签(#hashtag)是另一套功能。
对于无限滚动和单页应用,OpenWeb 的 Virtual Pages 采用每篇文章一个容器。FastComments 中,您对每个线程调用 FastCommentsUI(element, config),随后使用 instance.update(newConfig) 更换 URL ID,或使用 instance.destroy() 移除(docs)。React、Vue、Angular 与 SolidJS 库会在配置属性变化时自动处理。生命周期回调(onInit、onRender、commentCountUpdated、onReplySuccess、onVoteSuccess、onAuthenticationChange、onCommentSubmitStart)取代了您之前监听的 spot-im-* DOM 事件。
索引页的评论计数使用评论计数小部件,可单独或批量部署。为 SEO 起见,评论会直接渲染到页面中供搜索引擎爬虫读取,而不是通过 iframe,因此无需额外的 SEO API 调用。
Step-by-Step Cutover
1. 创建账户并完成基础配置。 在 fastcomments.com 或 eu.fastcomments.com 注册。设置审核选项、词黑名单、投票样式、默认排序以及小部件定制页面的自定义 CSS。添加版主和审核分组。如果您有大量管理员用户,可让我们为您导入。
2. 执行首次导入。 前往 Manage Data → Import,选择 OpenWeb(.csv)并上传。导入会作为后台任务运行,页面显示行数与状态,完成后会收到邮件通知(docs)。每条评论会保留 OpenWeb 的消息 ID 作为外部 ID,重新导入时会更新已有评论而不是创建重复。
3. 验证计数。 将作业的行数与您的导出对比。打开几条高流量的 URL ID 在审核仪表盘中抽查作者、日期、投票总数和审核状态。确认被拒评论显示为垃圾,待处理评论位于队列中。
4. 构建 SSO 负载。 在后端实现上述签名代码,使用与 OpenWeb 相同的 id 与 username。在测试环境的页面上使用员工账号进行验证:导入的评论显示为该用户,编辑与删除出现在其评论菜单中。
5. 在测试模板中替换嵌入代码。 用 FastComments 代码片段替换启动器和容器,映射 data-post-id 为 urlId,data-post-url 为 url。移除 window.SPOTIM.logout() 与 spot-im-* 监听器,或映射到相应回调。将 CSS 放入定制规则中,以便在每次 FastComments 更新时自动生效。
6. 并行运行。 在部分栏目或一定比例的文章上使用 FastComments,其他保持 OpenWeb。OpenWeb 端无需任何改动。监控审核队列与分析页面。FastComments 页面期间的评论不会出现在 OpenWeb 导出中,请在最终导入前完成并在并行窗口结束前完成最终导出。
7. CSP 与 DNS。 若使用内容安全策略(CSP),在 script-src、frame-src、connect-src 中加入 cdn.fastcomments.com 与 fastcomments.com(或 eu.fastcomments.com),并在移除启动器后删除 spot.im 与 openweb.com 的条目。DNS 不需要更改,无需重定向,因为 URL ID 已匹配。
8. 最终导入并上线。 再次导出覆盖并行运行期间的 OpenWeb 数据,重新导入(重新导入安全)。随后在所有页面部署模板更改,移除启动器、Reactions、Topic Tracker、Spotlight、铃和广告容器。
9. 上线检查清单。
- 在两台浏览器上确认生产文章的实时评论可见。
- SSO 登录、登出并使用真实订阅者账号发表评论。
- 版主收到摘要并能从中批准。
- 回复与提及邮件到达并指向正确页面。
- 封禁列表与词黑名单已填充。
- 页面反应(Page Reacts)与评论计数在原 Reactions 与计数器位置渲染。
- CSP 报告无错误。
- 将导出与仪表盘的评论计数再次对比。
What You Lose and What Is Different
直面差距:
- Live Blog:无对应产品。请在 CMS 或专用实时博客工具中保留,FastComments 只提供评论层。
- Topic Tracker:无跨文章的主题或作者关注,仅页面订阅。
- Community Spotlight:无 CTA 卡片产品。
headerHTML可在编辑器上方放置信息,但不提供邮件捕获。 - Ad revenue:无广告,组件本身不请求广告。
- Notification webhook:仅针对评论事件的 webhook,未提供用户级通知事件。
- Reactions history:文章级 Reaction 计数不在评论导出中,需重新收集或自行抓取。
- Polls history:投票定义与投票结果不在评论导出中,仅导入投票的评论文本,投票本身需自行抓取。
- Login model:无 SSO 的读者通过魔法链接登录,而非密码或社交登录按钮。
- Human moderation staff:OpenWeb 自带 Aida 人工审核团队。FastComments 提供工具、分类器与代理,实际人工由您自行安排。
您获得的价值:仅需一个小脚本且无广告请求的 widget;可通过批量操作与代理让单人管理大站点的审核;SSO 只需签名函数而非完整协议;以及不受法院监管的供应商。
Timeline and the Free Import Offer
对于拥有单一 SSO 集成且几十万条评论的出版商,预计需要一至两周:一天或两天完成导出与首次导入,几天实现 SSO 与模板,进行并行运行窗口,最后完成最终导入并切换。平台已有此规模的经验:United Cloud 运营十余门户、数百万条评论,itsfoss.com 通过同一自助导入器迁移了 88,000 条历史评论。
FastComments 免费导入您的 OpenWeb CSV 导出,帮助您在切换期间并行运行 OpenWeb 与 FastComments,并在迁移过程中提供支持,包括线程与用户匹配问题。企业计划提供 99.99% SLA,并在工作时间内一小时内回复。Flex 按使用计费,适合想要无合同起步的站点。
Write to us 并提供您的导出规模与 SSO 设置,我们会给出方案。
In Conclusion
今天就导出您的数据。记住:相同的文章 ID 将成为 URL ID,审核状态会随之迁移,嵌入代码只需直接替换。FastComments 与 OpenWeb 的差异已在上文列出,供您依据事实做决定。 :)
Cheers!
