写作平台

DEV vs Hashnode vs Medium

你发布了一个产品,也写了一篇文章。现在你想让开发者读到它,同时不把原文的搜索权重让出去。下面说明 DEV、Hashnode 和 Medium 如何处理转载文章、什么归谁所有、哪些规则适用于发布文章,还有一个在你浏览器中准备转载内容的工具包。

简短回答

  • 先在你自己的网站上发布原文。三个平台都允许你用规范链接指回原文;Hashnode 和 Medium 在条款中写明你的文字归你所有。
  • DEV 是三者中的开发者社区,有 canonical_url 字段、RSS 导入,以及接受规范 URL 的公开 API。
  • Medium 的读者不止开发者。它的导入工具会自动为你加上规范链接和原始日期。
  • Hashnode 最适合作为你博客的家。从今年起,自定义域名、GitHub 备份和 API 都属于它的付费 Pro 方案。

原文留在自己手里

规范链接告诉搜索引擎哪一份是原文。Google 称之为强信号,而不是命令:它仍可能选择另一份副本。

对于联合发布的副本,Google 表示最有效的办法是由合作方阻止副本被编入索引。我们阅读的三个平台的帮助页面都没有为单篇文章提供这个开关,所以你能掌控的是规范链接,加上一条可见的回链。

这就是顺序重要的原因:原文放在你的域名上并最先发布,每一份副本都注明它。

行之有效的顺序

  1. 在你自己的网站上发布文章,并确保无需登录即可访问。

  2. 用下方的工具包,为每份副本准备好指向原文的规范 URL。

  3. 在每份副本末尾加一行可见的文字,链接到原文。

  4. 由你自己逐个平台发布副本,并在每个页面的源代码中检查 canonical 标签。

把 SaaS 产品发布到目录站的实践笔记 →

哪个适合你

三个问题。答案只留在你的浏览器中。

并排对比

每个平台如何处理转载的发布文章,依据它们自己的文档和条款整理。

项目DEVHashnodeMedium
规范链接文章 front matter 中的 canonical_urlPro 的批量导入会从 front matter 映射;单篇文章请检查编辑器中的设置由导入工具添加,或手动设置为“最初发表于别处”
导入RSS 或 Atom 订阅源,可选择将来源标记为规范Pro 提供 Markdown 批量导入通过 URL 使用 Import a story
API公开 API;canonical_url 是一个字段,文章先以草稿形式创建自 5 月起 GraphQL API 仅限 Pro我们阅读的帮助页面中未提及
你自己的域名不支持,文章放在 DEV 上支持,自 6 月起需 Pro;之前的设置继续有效我们阅读的页面中未提及
所有权你需保证拥有相应权利;DEV 可以删除任何文章你的内容仍归你;授权仅用于运营服务你保留权利,并授予 Medium 在其服务上的广泛许可
推广不得以推广或获取反向链接为主要目的;内容要有实质不得主要为自我推广而发文不得以为外部产品引流为主要目的
只有链接的短帖不允许:文章必须包含完整内容原创或清楚注明出处的作品只要你拥有权利,就允许转载
文章如何被看到DEV 的社区信息流排序的首页信息流;自定义域名上的文章略有加权先推给关注者;由策展人挑选文章进行更广泛的分发
发布成本免费博客免费;域名、API 和备份需 Pro免费发布
发布文章最适合触达开发者作为你博客的家触达开发者以外的读者

转载工具包

填入原文 URL 和标题。工具包会生成带有你规范 URL 的 DEV front matter、Medium 和 Hashnode 的步骤,以及一行回链文字。它在你的浏览器中运行,不发送任何内容,也不发布任何内容。

工具包只准备文字。每份副本都由你在自己的账户中亲自发布。

发布链接专用的 UTM 生成器 →

受欢迎的发布文章

三个平台都不欢迎主要为了推广而存在的文章。好的发布文章,即使读者从不点击你的链接,也能学到东西。

  1. 从问题讲起。什么事情很难,对谁来说很难,常见的解决办法为什么不管用。
  2. 展示你是怎么做的。其他开发者可以借鉴的决策、取舍、代码或架构。
  3. 分享你学到的东西。让你意外的地方、你下次会怎么做,配上你自己的数据。
  4. 只链接一次你的产品。在对读者有帮助的地方放一个清晰的链接,联盟链接要做披露。
  5. 在评论里回复。发布当天留在现场;社区文章的生命力就在讨论之中。

如何在 Show HN 上发布你的产品 →
产品发布公告邮件模板 →
开源维护者的项目推广指南 →

官方原文中的规则

引用 Google、DEV、Hashnode 和 Medium 关于规范链接、所有权和推广的规则,并说明每条规则对你的发布文章意味着什么。

规则官方原文对你意味着什么
规范链接是强信号rel="canonical" link annotations: A strong signal that the specified URL should become canonical.规范链接通常有效,但它是信号,而不是命令。
Google 可能另作选择Even if you explicitly designate a canonical page, Google might choose a different canonical for various reasons, such as the quality of the content or technical signals.之后检查 Google 显示的是哪一份;原文应该是你最好的版本。
Google 谈联合发布The canonical link element is not recommended for those who want to avoid duplication by syndication partners, because the pages are often very different.对于其他网站上的副本,Google 更推荐另一种方法。
对副本最有效的做法The most effective solution is for partners to block indexing of your content.不让副本被编入索引最有效;在这些平台上你很少能控制这一点。
DEV 规范字段canonical_url: link for the canonical version of the content在每篇转载中都把 canonical_url 设为你的原文。
DEV 标签tags: max of four tags, needs to be comma-separated选出你最合适的四个标签。
DEV RSS 导入<link>: canonical_url, only used if the "Mark the RSS source as canonical URL by default" option is enabled in the RSS Settings.打开这个选项,否则导入的文章没有规范链接。
DEV APIcanonical_url: If this post was originally published elsewhere, specify the canonical URL to maintain SEO integrity.脚本也可以设置规范 URL。
DEV 内容政策Users must make a good-faith effort to share content that is on-topic, of high-quality, and is not designed primarily for the purposes of promotion or creating backlinks.先为读者写作;主要是广告的文章可能会被删除。
完整文章,而不是链接Posts must contain substantial content — they may not merely reference an external link that contains the full post.粘贴全文,而不是指向你网站的预告片段。
你在 DEV 上的权利Users agree and certify that they have rights to share all content that they post on DEV Community只转载你自己写的或有权分享的内容。
DEV 可以删除文章DEV Community may remove any content users post for any reason.把原文留在你的网站上;副本只是额外收获。
Hashnode 上的所有权Everything you publish is yours. We only host and display it to operate the platform.你的文章仍然归你。
Hashnode 许可终止This license continues until you remove your User Content or delete your account删除文章或账户,许可即终止。
Hashnode 上的自我推广using the platform primarily for self-promotion without contributing to the community贡献一些发布本身之外的内容。
Hashnode 自定义域名Custom domains. Map your own domain to your blog, with the www variant if you want it.你自己的域名现在是 Pro 功能。
Hashnode 批量导入We map your titles, tags, canonical URLs, and original publish dates straight from the frontmatter.在 Pro 上导入 Markdown 时,规范 URL 会一并带入。
之前的设置保留Publications with any of these set up before Pro launched are grandfathered, so nothing changes for you.如果你在 Pro 推出前已绑定域名,它会继续有效。
Hashnode APIEvery API request, queries and mutations, now requires a Pro plan on your publication.向 Hashnode 自动发布需要 Pro。
Hashnode 信息流Posts on custom domains get a small boost.自定义域名上的文章在信息流中会略受青睐。
Medium 导入Using the import tool will automatically backdate the post to the original date, as well as add a canonical link to make sure your SEO won't be penalized.导入工具会为你设置规范链接和原始日期。
只导入你自己的作品You may only import content from other sites for which you have the right to do so.只导入你有权重新发布的文章。
在 Medium 上手动设置规范链接select This story was originally published elsewhere. Enter your link and click Save canonical link.对于粘贴的文章,在 More settings 中设置规范链接。
Medium 上的所有权You retain your rights to any content you submit, post or display on or through the Services.你保留文章的权利。
Medium 许可you grant Medium a nonexclusive, royalty-free, worldwide, fully paid, and sublicensable licenseMedium 可以在其各项服务中展示和分发它。
在 Medium 上转载(You are allowed to cross-post content from your blog to Medium, provided you own the rights for the content.)转载你自己的博客文章是明确允许的。
Medium 垃圾内容规则Posting content primarily to drive traffic to, or increase the search rankings of, an external site, product, or service只把读者引向你产品的文章会被视为滥用。
Medium 的基础触达This is the baseline category for any story on Medium which does not violate Medium rules.每篇遵守规则的文章都会触达你的关注者。
Medium 策展人Our human curation team reviews stories seven days a week to identify stories to Boost across the Medium homepage, emails, apps, and more.更广的触达由人来决定;写一篇你自己也想读的文章。

LaunchRepo 的作用

LaunchRepo 把你的代码仓库变成一套发布工具包,由你自己的编程智能体在你自己的 Chrome 中使用:上架文案、带日期的发布计划,以及你在每个平台上进展情况的记录。

它不会替你发布博客文章。用上面的工具包来转载,并把原文留在你自己的网站上。

G2 vs Capterra →

来源

本页每条规则和每个数字都来自各平台自己的公开页面,于 2026年10月1日 在未登录状态下查阅。

来源页面更新查阅日期
DEV Community: Editor Guide未标注日期
DEV Community: Publishing from RSS or Atom未标注日期
DEV Community: Terms of Use未标注日期
Forem API V1 (DEV)未标注日期
Hashnode Terms of Use
Hashnode Code of Conduct
Hashnode changelog: Introducing Hashnode Pro
Hashnode changelog: GraphQL API is moving to a paid offering
Hashnode changelog: Feed and discovery
Medium Help: Importing a post to Medium未标注日期
Medium Help: Set a canonical link未标注日期
Medium Terms of Service
Medium Rules未标注日期
Medium’s Distribution Guidelines
Google Search Central: How to specify a canonical URL
Google Search Central: Fix canonicalization issues

常见问题

我的发布文章应该发在 DEV、Hashnode 还是 Medium 上?
先发布在你自己的网站上,再转载。DEV 触达开发者,Medium 触达更广泛的读者,Hashnode 最适合作为你博客的家。
转载会影响我的 SEO 吗?
通常不会。先在你自己的网站上发布,并在每份副本中链接回原文;Google 自己的指南对联合发布的副本更推荐 noindex,而不是规范链接,而且它仍可能选择另一个版本,所以要让原文成为你最好的版本。
如何在 DEV 上设置规范 URL?
在文章的 front matter 中添加 canonical_url,例如使用本页的工具包。对于 RSS 导入,在 DEV 的设置中开启将 RSS 来源标记为规范 URL;通过 API 时,随文章一起发送 canonical_url。
Medium 会自动添加规范链接吗?
会,前提是你使用 Import a story。对于你自己粘贴的文章,在 More settings 中选择 This story was originally published elsewhere(这篇文章最初发表于别处)并保存链接。
Hashnode 上的自定义域名还免费吗?
对新设置来说不再免费:自 6 月起,自定义域名属于 Hashnode Pro。在 Pro 推出前已绑定域名的博客可以继续保留。
在这些平台上,我的文章归谁所有?
归你。Hashnode 和 Medium 在条款中写明了这一点,并取得运营服务所需的许可;DEV 要求你保证对所发布的内容拥有权利。

规划你发布的其余部分

LaunchRepo 为你的编程智能体提供发布计划和每个平台的上架文案。它可以自行发送哪些内容,由你决定。

查看价格