跳转至

微信小程序从 0 到 1 上线指南(含 H5 webview 快速验证)

目标读者:零基础,想把一个 H5 页面(或完整业务)通过小程序跑起来并发布上线的人。

全文按四个阶段编排:申请 → 备案 → 开发 → 部署,每个阶段独立成章,可按需跳读。


〇、阶段总览:哪些事在哪个阶段做

阶段 要做的事 产出 可否并行
一、申请 注册小程序账号、主体认证、拿 AppID/AppSecret AppID + AppSecret 第 1 天完成
二、备案 买域名、买服务器、提交 ICP 备案、配 HTTPS ICP 备案号 + 可访问的 HTTPS 站点 与开发并行,尽早启动
三、开发 下载开发者工具、写 web-view 壳、免备案真机调试 可真机预览的开发版/体验版 与备案并行
四、部署 H5 上服务器、小程序后台配域名+校验文件、提审发布 线上小程序 备案通过后当天可完成

开发阶段 vs 部署阶段的事务划分(重要)

【开发阶段做】(不需要域名备案完成)
├─ 下载安装微信开发者工具
├─ 创建小程序项目、编写 web-view 壳代码
├─ 勾选「不校验合法域名」→ 用任意地址(含 http、IP、本地)调试 H5
├─ 真机预览(开调试模式)给团队体验

【部署阶段做】(备案必须已完成)
├─ H5 静态文件上传服务器,Nginx + HTTPS 对外提供服务
├─ 小程序后台配置 request 合法域名
├─ 小程序后台配置业务域名 + 上传校验文件到服务器根目录
├─ 关闭「不校验合法域名」后全功能真机回归
└─ 提交审核 → 发布上线

三条硬性前提(先自查,决定路线)

  1. 个人主体不能使用 web-view<web-view> 只对企业/个体工商户等非个人主体开放。个人主体只能原生开发;想加载 H5 必须注册个体工商户或企业。
  2. web-view 的业务域名必须备案 + HTTPS + 校验文件,三者缺一不可,且不支持 IP、localhost。
  3. 开发/体验阶段可以不备案:勾选「不校验合法域名」即可用任意地址调试,第 1 天就能真机看到 H5。备案只卡"发布上线",不卡"开发验证"。

一、申请阶段:注册小程序账号并获取 AppID

1.1 准备材料

个人主体:

  • 一个未绑定过公众平台的邮箱
  • 本人身份证、手机号、微信(扫码验证)

企业主体(要用 web-view 必选):

  • 未绑定过的邮箱
  • 营业执照(个体工商户执照也可以)
  • 法人身份证 + 手机号
  • 对公账户(个体户可用法人银行卡)
  • 300 元微信认证费(企业主体提审前必须完成认证)

1.2 注册步骤

  1. 打开 https://mp.weixin.qq.com → 右上角「立即注册」→ 选「小程序」
  2. 填邮箱 → 邮箱激活
  3. 选主体类型:要 web-view 必须选企业/个体工商户(个人主体无法后续升级,只能重新注册)
  4. 登记主体信息:营业执照、对公打款验证或法人微信验证
  5. 登记管理员信息并扫码绑定管理员微信
  6. (企业主体)完成微信认证:账号设置 → 微信认证 → 交 300 元 → 1~3 个工作日

1.3 获取 AppID 和 AppSecret

  1. 登录 mp.weixin.qq.com →「开发」→「开发管理」→「开发设置」
  2. AppID:直接可见,形如 wx1234567890abcdef
  3. AppSecret:点「生成」获得,只显示一次,立刻妥善保存

安全提示:AppSecret 绝不能写进前端代码或提交到仓库,泄露后立刻在后台重置。


二、备案阶段:域名、服务器、ICP 备案、HTTPS

备案是全流程唯一不可压缩的等待项(1~3 周),申请阶段完成后当天就应提交备案

2.1 购买域名

  • 阿里云/腾讯云/华为云等注册商购买,.com/.cn 均可
  • .cn 及国内注册商域名要求实名认证(上传身份证,1 天内通过)
  • 域名建议短、与业务相关,如 aircloud-demo.cn

2.2 购买服务器(备案的前提)

  • 备案必须挂靠国内云服务器(阿里云/腾讯云轻量服务器或 ECS 均可,最低配 2 核 2G 足够静态 H5)
  • 境外服务器(香港/海外)不需要备案,但无法用于业务域名——微信校验备案号,web-view 路线必须国内备案
  • 注意:域名在哪家云商备案,就应使用哪家云商的服务器(备案信息与云商绑定)

2.3 ICP 备案流程(以腾讯云为例,阿里云类似)

  1. 云厂商控制台 →「网站备案」→ 开始备案
  2. 校验备案类型:填域名 + 服务器实例,系统识别首次备案
  3. 填写主体信息:营业执照、法人/负责人信息
  4. 填写网站信息:
  5. 网站名称:不能带"平台/中心/商城"等敏感词
  6. 首页 URL:https://你的域名
  7. 备注写清用途,如"展示物联网设备监控数据的 H5 页面,通过小程序 web-view 访问"
  8. 微信扫码人脸核验
  9. 云厂商初审(1~2 个工作日,可能电话核实)→ 提交管局审核(各省 1~20 个工作日,多数约 1 周)
  10. 通过后获得 ICP 备案号(如"粤ICP备2026000001号-1")
  11. 备案号必须挂在网站页脚并链接到 https://beian.miit.gov.cn

备案期间(提交管局后)域名必须保持不可访问(云厂商强制阻断),通过后才能解析开站。

2.4 域名解析与 HTTPS 证书(备案通过后做,也可提前准备好证书)

  1. 域名控制台添加 A 记录指向服务器公网 IP
  2. 申请 HTTPS 证书:推荐云厂商免费 DV 证书(腾讯云/阿里云每年 20 张)或 Let's Encrypt
  3. 部署证书见 4.1 Nginx 配置
  4. 验证:浏览器访问 https://你的域名 出现锁标志

三、开发阶段:开发者工具、web-view 壳、免备案调试

3.1 下载安装微信开发者工具

下载地址:

https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html
  • 选「稳定版 Stable Build」,支持 Windows / macOS
  • 安装后用管理员微信扫码登录
  • 建议同时收藏官方文档入口:https://developers.weixin.qq.com/miniprogram/dev/framework/

3.2 配套附件说明(本项目 rules 目录与接口文档)

附带:案例接口文档以及生成*.md生成页面规则

H5 业务(登录、项目/设备查询、历史数据)全部按上述规则与接口文档开发迭代,小程序侧只做 web-view 壳,业务迭代不依赖小程序发版

3.3 创建小程序项目

  1. 开发者工具 → 新建项目 → 目录选空文件夹
  2. AppID 填申请阶段拿到的(不要用测试号——测试号功能不全且不能发布)
  3. 后端服务「不使用云服务」,模板选「JavaScript 基础模板」
  4. 生成的目录结构:
miniprogram/
├── app.js          # 小程序入口
├── app.json        # 全局配置(页面路由、tabbar、窗口样式)
├── app.wxss        # 全局样式
└── pages/
    └── index/      # 每个页面 = 4 个同名文件(js/json/wxml/wxss)

3.4 web-view 壳最小实现(约 10 行代码)

app.json

{
  "pages": ["pages/index/index"],
  "window": {
    "navigationBarTitleText": "AirCloud 设备管理",
    "navigationBarBackgroundColor": "#1E6FFF",
    "navigationBarTextStyle": "white"
  }
}

pages/index/index.wxml

<web-view src="https://aircloud-demo.cn/index.html"></web-view>

pages/index/index.js

Page({
  onLoad() {
    // 可选:H5 需引入 https://res.wx.qq.com/open/js/jweixin-1.3.2.js
    // 才能调用 wx.miniProgram.navigateTo 跳回小程序页面
  }
});

web-view 自动占满整页,无需任何布局代码。

web-view 内 H5 的通信限制: - H5 里 <a href> 跳转仍留在 web-view 内部 - H5 跳回小程序页面用 JS-SDK 的 wx.miniProgram.navigateTo - web-view 内无法调用小程序原生 API(支付、扫码等需跳回小程序)

3.5 开发阶段免备案调试(关键技巧)

开发者工具右上角「详情」→「本地设置」→ 勾选:

  • 不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书

勾选后开发版可加载任意 http/https 地址(未备案、自签证书、本地 IP、局域网地址均可)。

真机预览同样有效:预览二维码 → 真机右上角胶囊 →「打开调试」→ 重进后不校验域名。

这意味着:备案还没下来时(第二阶段漫长等待期),开发阶段照样全功能联调 H5,这是最重要的快速验证手段。

3.6 真机预览与体验版

  1. 预览:工具栏「预览」→ 二维码 → 管理员/项目成员扫码真机运行
  2. 上传:工具栏「上传」→ 填版本号 + 备注 → 代码进微信后台版本库
  3. 体验版:后台「管理」→「版本管理」→「开发版本」→ 选为体验版 → 生成体验二维码
  4. 体验成员:后台「成员管理」→「体验成员」→ 最多 15 人

体验版约 30 天不发布会被清理,重新上传即可。


四、部署阶段:H5 上线、域名配置、提审发布

前置条件:ICP 备案已通过。本章所有操作当天可完成。

4.1 H5 部署到服务器

把 H5 静态文件(本项目平铺结构直接整目录)上传到服务器,Nginx 配置:

server {
    listen 443 ssl;
    server_name aircloud-demo.cn;

    ssl_certificate     /etc/nginx/ssl/aircloud-demo.cn.pem;
    ssl_certificate_key /etc/nginx/ssl/aircloud-demo.cn.key;

    root /var/www/aircloud;   # H5 静态文件根目录
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

server {
    listen 80;
    server_name aircloud-demo.cn;
    return 301 https://$host$request_uri;   # 强制 HTTPS
}

验证:浏览器 https://aircloud-demo.cn 打开 H5 且证书有效。

4.2 小程序后台配置域名(含校验文件)

配置项 用途 要求
request 合法域名 wx.request 的 HTTPS 请求 HTTPS + 备案
socket/upload/download 域名 WebSocket、文件传输 wss/HTTPS + 备案
业务域名 <web-view> 能打开的页面 HTTPS + 备案 + 所有权校验文件

配置 request 合法域名:

  1. mp.weixin.qq.com →「开发」→「开发管理」→「开发设置」→「服务器域名」→「修改」
  2. https://你的域名(不带路径,端口 443)

配置业务域名(web-view 专用):

  1. 「开发设置」→「业务域名」→「修改」→ 填入域名
  2. 下载校验文件(形如 RWJchpoFsZ.txt
  3. 把校验文件放到该域名服务器根目录,必须可直接访问:
https://aircloud-demo.cn/RWJchpoFsZ.txt   ← 内容原样返回
  1. 回后台点「保存」,微信服务器实时抓取校验,通过即生效

校验文件常见失败原因:

  • 文件放错路径(必须根目录,URL 不能带跳转)
  • 服务器防爬/CDN 拦截了微信抓取 UA
  • 域名未备案 / 备案被注销
  • 用了 http 而非 https

4.3 三种资源现状的应对方案

情况 A:只有域名,没有服务器

步骤 说明
1. 仍需购买云资源 域名备案必须挂靠国内云服务器(或云厂商备案服务码),只有域名无法完成备案
2. 两条路 ① 买最低配轻量服务器(约几十元/月),备案 + 托管 H5 一步到位(推荐);② 用云厂商静态托管(腾讯云 COS / 阿里云 OSS + CDN)绑定自定义域名,同样要求域名先备案,备案仍需购买满足条件的云资源
3. 特殊通道 微信云开发「静态网站托管」默认域名(xxx.tcloudbaseapp.com)属微信官方域名,免备案免服务器即可被小程序访问,适合快速上线(是否可直接用于 web-view 以官方文档最新说明为准;绑定自定义域名仍需备案)

情况 B:只有服务器,没有域名

步骤 说明
1. 必须买域名 小程序业务域名/request 域名不支持 IP 和 localhost,没有域名就无法配置
2. 开发不受阻 开发阶段勾「不校验合法域名」可直接用 http://服务器IP 调试,先开发后买域名完全可行
3. 发布前补齐 买域名 → 实名 → 备案(挂靠现有服务器)→ 解析 → HTTPS → 后台配置,流程同第二章

情况 C:什么都没有(域名、服务器都还没买)

第 1 天(三件事并行):
├─ 注册小程序账号,拿 AppID(申请阶段)
├─ 买域名 + 买服务器,当天提交 ICP 备案(备案阶段)
└─ 下载开发者工具,写 web-view 壳,用「不校验合法域名」+ IP/临时地址调试(开发阶段)

第 2~21 天(备案等待期):
└─ 按 rules 规则 + 接口文档迭代 H5,体验版给团队测试

备案通过后(当天):
└─ 解析域名 → HTTPS → H5 上服务器 → 后台配域名 + 校验文件 → 提审(部署阶段)

审核 1~7 天 → 发布上线

4.4 提审发布

提审前自查清单:

  • [ ] 企业主体已完成微信认证(个人主体跳过)
  • [ ] 服务器域名、业务域名全部配置生效
  • [ ] 校验文件可在浏览器直接打开
  • [ ] HTTPS 证书有效(剩余 > 1 个月)
  • [ ] 关闭「不校验合法域名」后真机全功能回归(必做,否则提审必挂)
  • [ ] 无"测试/TODO/占位"内容,无诱导分享、无虚拟支付
  • [ ] 类目与实际内容一致(设备管理选"工具 > 信息查询"或"IT科技 > 硬件与设备")

提交流程:

  1. 工具栏「上传」最新代码
  2. 后台「版本管理」→「开发版本」→「提交审核」
  3. 填页面信息、web-view 页如实填写业务域名及用途并附域名内容截图、选类目
  4. 首次提审通常 1~7 天(含人工复审),后续几小时到 2 天
  5. 通过后「审核版本」→「发布」→ 全量或灰度
  6. 用户微信搜索小程序名称即可使用

常见驳回原因:

驳回理由 应对
web-view 内容与类目不符 修改类目,或让 H5 内容与类目一致
页面空白/无法加载 域名未配置/证书问题,查 4.2
诱导分享/关注 去掉 H5 里分享引导、公众号二维码
存在测试内容 清理 TODO、假数据、占位文案
个人主体使用 web-view 无法申诉,换企业主体重新注册

五、其他小程序平台差异速查

事项 微信 支付宝 抖音
注册入口 mp.weixin.qq.com open.alipay.com developer.open-douyin.com
web-view 组件 ✅(非个人主体+备案域名) ✅(要求类似) ✅(要求类似)
校验文件机制 有(业务域名) 有(H5 域名配置) 有(web-view 域名)
认证费 企业 300/年 免费 企业 300/年
备案要求

多端发布同一 H5 建议用 Taro / uni-app 一次开发多端编译,壳层(web-view)各平台仍需分别配域名。


六、总时间线参考(web-view 壳方案)

第 1 天        申请:注册小程序拿 AppID
               备案:买域名服务器、提交备案
               开发:下载工具、写 web-view 壳、勾「不校验域名」真机看到 H5
第 2~21 天     备案等待期:迭代 H5、体验版测试(开发)
备案通过当天   部署:HTTPS → H5 上服务器 → 后台配域名+校验文件
随后           提审 1~7 天 → 发布上线

第 1 天同时启动申请、备案、开发三件事,是整体最快的关键。


七、附录:校验文件与域名问题排查命令

# 1. 校验文件是否可访问且内容正确(应在服务器根目录)
curl -v https://aircloud-demo.cn/RWJchpoFsZ.txt

# 2. 检查 HTTPS 证书有效期与链完整性
curl -vI https://aircloud-demo.cn 2>&1 | grep -E "expire|subject|issuer"

# 3. 确认 HTTP 强制跳转 301(web-view 要求 https 直达)
curl -I http://aircloud-demo.cn

# 4. 确认服务器没有拦截微信抓取 UA
curl -A "Mozilla/5.0 (iPhone; CPU iPhone OS 16_0) MicroMessenger/8.0" \
     https://aircloud-demo.cn/RWJchpoFsZ.txt

排查顺序:文件存在 → 证书有效 → 备案号有效 → 后台重新保存触发微信重新抓取。

搜索