三周,我的公众号从 6.7k 粉丝涨到了 29.4k。
后台看这一个月的 2.4 万新关注,有 1.5 万多是扫码来的。这些码,大部分放在我做的一个网站上。
页脚那种「欢迎关注」的二维码,很少有人扫。这次的码放在一个按钮后面:想下载那本 800 多页的PDF,先关注公众号。
用户想带走的东西,就是最好的关注理由。
做网站的人应该有体会:流量来了,看完就走,下次想再找到他们很难。做公众号的人也知道,涨粉越来越难。我做的,就是把这两头接起来。
还有一个反直觉的地方:我的公众号是个人订阅号,没认证,服务器还在海外。网上常见的两种微信登录,一个要企业资质,一个要认证服务号,我都没有。最后靠一个每个公众号都有的基础功能做成了。
这篇把怎么做的、数据和踩过的坑都详细分享一下。整套做法我做成了开源 Skill,你的网站也能直接抄作业。
网站是 howtolivebetter.net,《高性价比人生指南》的在线版,上线三周多,将近 10 万用户:

公众号这边,新增关注从国庆开始往上走:

一开始,我没想好怎么承接流量
刚做这个网站的时候,我没想好怎么商业化,也没想好流量来了怎么接住。
后来想起来,我用过一些别人做的服务,是先关注公众号,再在公众号里完成登录授权的。
那我是不是也可以这样做?
于是我让 Codex 去做了一轮调研。
微信登录有几种做法,条件最差的也能做
Codex 的调研结果,大致分三类:
| 做法 | 体验 | 门槛 |
|---|---|---|
| 开放平台「网站应用」 | 扫码授权登录 | 资质认证 + 备案,最高 |
| 认证服务号「带参数二维码」 | 扫码即关注即登录 | 要认证服务号 |
| 个人订阅号「消息推送」 | 关注后发一个码 | 能开消息推送就行 |
关于第一种的门槛:网站应用和微信登录权限都要审核。按开发者的申请记录,还要先做开发者资质认证,主体得是企业或个体工商户,大陆审核费 300 元;官方《应用审核规范》还要求官网展示备案信息、登记表填 ICP 备案号。
第一种门槛最高,个人身份基本走不通。而且它只是授权登录,用户不用关注你的公众号,起不到涨粉的作用。
第二种体验最好,但要认证服务号。
我原本以为自己的公众号是认证订阅号,后台一看,是个人主体、没认证。服务器、域名也都在海外。前两条路都走不了。
所以最后用的是第三种。这也是条件最差的情况:你只有一个个人身份的公众号,也能做。
原理:把自动回复换成自己的服务
公众号后台的「自动回复」,是微信自己提供的。
公众号还有一个能力叫消息推送:打开之后,用户发给公众号的消息,微信会转发到你自己的服务器,由你的服务器决定回复什么。
登录就是建在这上面的:
- 网页上显示一个 6 位登录码
- 用户关注公众号,把这 6 位数发过去
- 服务器收到消息,知道是哪个微信发来的,把这个微信和网页上的登录码绑在一起
- 网页发现绑上了,自动登录
用户先关注,再发码,服务器就确认了他的身份,可以登录了。
这是微信官方支持的能力,很多人在用,不是什么 hack 的方式。不需要认证,不需要开放平台,也不需要 AppSecret。
核心链路就是一句话:
把网站的关键转化动作,设计成要关注公众号、发码认证之后才能登录。
这样网站的用户,就变成了公众号的粉丝。

为什么转化率能到 20% 多
| 网站用户 | 公众号涨粉 | 粗算的转化率 |
|---|---|---|
| 近 10 万 | 2 万+ | 20%+ |
如果只是在网站上放一个「关注公众号」的二维码,效率是非常低的。按我的经验,能有 1% 就谢天谢地了,很多时候只有零点几。
我的做法是:
把用户最想做的事,设计成要登录才能做
对「高性价比人生指南」来说,用户最想要的是把整本书带走:PDF、EPUB、Word、Markdown。所以下载这个动作,改成了登录之后才能下载。内容本身还是全部公开,随便看,不挡搜索引擎,也不挡分享。挡的是「带走」,不是「阅读」。
数据也能看出来,公众号二维码 72% 的曝光,来自「下载这本书」的弹窗:

另外,用户在网站上标记了建议,进度只存在这台设备上,我也会提醒他登录同步。
这个提醒一开始比较勤,标 1 条、3 条就会弹出来。后来减少了:现在标满 10 条才出现,关掉就不再弹,同类提醒 7 天最多一次。

然后在登录方式上,引导用户用公众号登录。10 月 3 日之后的新用户里,98% 选的是微信登录。
还有一个细节:登录页我是单独设计的,不是光秃秃一个登录框,也不只是一个让人扫码的动作。页面会告诉用户,登录之后能干什么,为什么值得做这一步。

国庆假期是高峰。网站这边,10 月 6 日一天就有 3,316 人完成公众号登录。
公众号后台的渠道构成也能对上:这一个月新增关注 2.4 万,65% 来自扫描二维码。

说明一下口径:网站数据库里,通过公众号完成登录的有 13,589 人,里面有原来就关注的老读者;也有不少人在公众号回复「下载」直接拿链接,没登录网站,不在这个数里。这段时间公众号也照常在发文章,涨粉不全是网站带来的,20% 多是粗算。
好几套方案,一层层兜底
登录方式不是只有一种。默认走一套,走不通,还有备用的,最后邮箱兜底:
- 默认,配对码:网页给 6 位码,用户发给公众号,网页自动登录,不用回来输验证码。
- 微信里打开:在公众号发「生活」,回复一个一键登录链接,点一下就登录,登录完跳回原来那一页。
- 手机浏览器:二维码没法扫自己,所以先给码,一个按钮「复制登录码并打开微信」。
- 备用:公众号回一个 6 位验证码,用户回网页输进去。
- 只想下载:在公众号回复「下载」,直接拿到链接,连登录都不用。
- 最后兜底:邮箱注册。

这几套不是摆设。一键登录链接被打开了 6,279 次,桌面配对成功 2,982 次,差不多 2 比 1。如果只做了桌面那一套,很多人就卡住了。
一套服务,多个网站复用
这套认证逻辑搭好之后,不只一个网站能用。
公众号的消息推送只能填一个地址。我的公众号同时服务 VibeCoding 和高性价比人生指南两个网站,做法是不同网站用不同的口令:VibeCoding 发「登录」,高性价比人生指南发「生活」。服务器看口令,就知道是哪个网站的登录,两边的身份也是隔开的。
以后再做新网站,加一个口令就能接上。
我踩过的坑
说实话,我一开始对这个方案也不是很了解,是一路踩坑过来的。前后改了好几轮:
| 日期 | 改动 |
|---|---|
| 10 月 3 日 | 第一版上线:公众号回 6 位验证码,用户回网页手动输入。 |
| 10 月 4 日 | 下载弹窗加了数字口令,发给公众号直接拿下载链接。 |
| 10 月 5 日 | 登录关键词从「登录生活」缩成「生活」。 |
| 10 月 7 日 | 上线配对码,网页自动登录;微信里改走一键登录链接,回复「下载」直接拿链接。 |
| 10 月 9 日 | 减少登录提醒:标满 10 条才出现,7 天最多一次。 |
1. 打开消息推送,自动回复和菜单会失效
这是微信官方写明的。我公众号原来有欢迎语、7 组关键词回复,还有一个「关于作者」菜单。
打开之前,我把所有回复原文抄下来,搬进了代码。菜单没有接口权限,重建不了,就改成发送「关于作者」四个字触发同样的回复。
提示:如果你也要做:先把欢迎语、关键词回复、菜单文案全部备份下来,再打开消息推送。
2. 验证码太长
第一版的验证码是 16 位字母加数字,分成 4 组,很快就改成了 6 位纯数字。
3. 限流把正常用户挡在外面
一开始为了防止有人猜验证码,设了一个全站共用的上限:5 分钟最多验证 20 次。可流量一大,正常用户也会被它挡住,10 月 6 日晚上就去掉了。
按 IP 限流也有问题。网站在 Cloudflare 后面,拿到的 IP 不准。后来改成按账号或者按浏览器来限。
4. 登录码没过期,却提示过期
配对码刚上线时,大概五分之一的配对报「已过期」。原因有两个:同一个浏览器里又开了一次配对,把前一次的记录覆盖了;还有登录失败时,程序先把记录清掉了,下一次查询就只能说过期。
后来又碰到一次时间比较的问题,程序里的时间和数据库的时间格式一转换就差出去了。
踩坑提示:过期时间不要拿程序里的时间去比,直接在数据库里用
now()判断,就不会因为时区和格式转换出错。
5. 微信里打开的网页,配对几乎全失败
配对码上线前,从微信内置浏览器登录的,大约占微信登录的 41%。配对码上线后,这部分几乎掉到了零,有 36 个人发了码,网页却没接住。
原因是,用户从网页切到公众号去发消息,再回来时,原来那个在等的页面已经被挂起或者刷新了。所以在微信里,改成了「发关键词,点一键登录链接」。
6. 老用户变成两个账号
有人先用邮箱注册,后来又用微信登录,就多出了一个账号。我没有按昵称自动合并,容易合错人。后来加了一个提示:「这个微信之前单独登录过」,列出两边各有多少条进度,让用户自己决定要不要合并。
要注意:后端得自己维护
这个方案有一个代价:后端服务要自己维护。
打开消息推送之后,公众号后台的自动回复就不能用了。以后想加新的自动回复,都要在自己的服务上改,不能再去微信后台配了。
不过整体来说,我觉得这个模式还是挺方便的。最大的好处是,那些访问一次就走、跟你没什么联系的用户,能被导进微信里来。
对做博主来说,这也是个不错的模式。光写文章,我可能写不过别人。
写文章加做网站,说不定是个弯道超车的机会
抄作业:website-to-wechat Skill
我把整套做法做成了一个 Skill,开源在 GitHub:
website-to-wechat:github.com/littleben/website-to-wechat
MIT 协议,欢迎到处分享,二次创作也没问题。
里面有:
- 什么情况适合做、什么情况别做
- 诱饵怎么选、入口放哪、几种环境的界面和文案
- 公众号后台怎么配置、旧的自动回复怎么迁移
- 上线前的真机验收清单
- 从生产代码里提炼的参考实现:消息加解密、回调处理、登录码和配对码、限流,带测试
在 Claude Code 里装上:
git clone https://github.com/littleben/website-to-wechat ~/.claude/skills/website-to-wechat
然后跟它说:
用 website-to-wechat skill,给我的网站加上公众号登录。先分析我的网站和数据,找出用户最想要、值得用登录来换的东西,提出转化路径给我确认,再动手。
不一定是下载 PDF。它会先看你的网站有什么值得「带走」或「保存」的东西,比如完整版下载、模板、生成结果、学习进度,列出几条转化路径让你选,确认之后再写代码。

Codex 或者其他支持 Skill 的工具也能用。不用 AI 的话,直接看 SKILL.md 照着做也行。
用的时候有任何问题,欢迎给我提反馈,我会不断更新。觉得有用的话,在 GitHub 上点个 Star。
实际效果,可以去网站上体验一下:howtolivebetter.net。体验一次登录,顺便也给我涨个粉。
数据来源:
- 网站访客:Google Analytics 4,2026 年 9 月 28 日上线至 10 月 22 日,记录到 96,027 人。本文沿用截至 10 月 22 日的数据
- 公众号粉丝和新增关注渠道:公众号后台「用户分析」,9 月 21 日至 10 月 21 日
- 登录数据:网站生产数据库(只读查询),统计到 2026 年 10 月 22 日,按北京时间
- 二维码曝光、一键链接和配对次数:Google Analytics 4,10 月 2 日至 10 月 20 日
- 「启用消息推送后自动回复和菜单失效」「带参数二维码仅认证服务号可用」:微信开发者文档