微信小程序开发不仅仅是写代码,还涉及服务器购买、域名备案、小程序备案、认证等一系列流程性工作。本文记录了从零开始开发微信小程序的完整流程,包括踩坑记录和注意事项,希望能帮助其他开发者少走弯路。

服务器购买

选择云服务商

常见的云服务商有:

  • 阿里云(推荐)
  • 腾讯云
  • 华为云
  • 百度云

服务器配置建议

小型个人小程序推荐配置:

  • CPU:1 核或 2 核
  • 内存:2GB
  • 带宽:1-3Mbps
  • 系统盘:40GB
  • 操作系统:CentOS 7.x 或 Ubuntu 18.04+

费用参考:

  • 新用户通常有优惠,年费在 100-500 元不等
  • 建议先购买 1 年,测试稳定后再续费

购买注意事项

  1. 选择离目标用户较近的地域节点,可以降低延迟
  2. 新用户可关注各大云平台的首购优惠
  3. 学生用户可申请学生优惠
  4. 注意查看带宽费用,避免后期流量费用过高

域名购买

购买域名 1 元起_.xin 首年 0 元_域名优惠活动 - 阿里云权益中心

选择合适的域名

小程序用户看不到域名,所以选择便宜的即可。用生日组合纯数字.xyz 域名最便宜。

选购技巧:

  • 选择一个最便宜的域名时,注册时选择 2 年看看后期续费费用
  • 如果一年 18 元,两年 120 元,说明第二年费用恢复原价,太贵了不要买
  • 推荐选择续费价格稳定的域名后缀

常见便宜域名后缀:

  • .xyz:首年最便宜,但续费可能较贵
  • .top:价格适中
  • .site:价格适中
  • .club:价格适中

Responsive Image

域名价格对比

Responsive Image

域名选择界面

创建信息模板

下单时创建一个新的信息模板,避免之前创建过的填的信息不完善。购买之后会直接提交到域名注册局审核,信息不完善容易审核不通过。

Responsive Image

创建信息模板

信息模板填写注意事项:

  • 姓名必须与身份证一致
  • 地址填写详细,精确到门牌号
  • 电话号码保持畅通,可能会接到审核电话
  • 邮箱填写常用邮箱

域名实名认证

等待几小时(一般在 6 小时内),域名注册局实名认证成功,即可进行下一步备案。

实名认证材料:

  • 个人:身份证正反面照片
  • 企业:营业执照、法人身份证

域名解析

登录域名服务商,找到域名解析,添加解析记录。比如我在阿里云买的,从这里进入:

Responsive Image

找到解析设置:

Responsive Image

添加解析记录,第四步的IP地址就是你购买服务器后,服务器提供商给你的公网IP地址:

Responsive Image

保存后,等待几分钟,解析记录就会生效。

Responsive Image

SSL证书购买与部署

微信小程序必须使用Https协议,所以需要购买SSL证书。阿里云有免费的证书可以测试使用,但是有效期是3个月,需要定期续费。

从以下路径找到免费证书申请入口,你也可以在阿里云顶部搜索框搜索SSL,也能找到。

Responsive Image

Responsive Image

Responsive Image

点击创建证书后,如实填写信息提交即可,然后等待签发:

Responsive Image

Responsive Image

快的话二十分钟就能签发,会给你发邮件提醒,之后就可以部署了:

Responsive Image

点击部署,阿里云轻量ESC不支持一键部署,只能手动部署:

Responsive Image

根据你的服务器类型选择SSL证书下载,我是用的Nginx。

部署我求助了AI工具,需要配置Nginx,我确实不会,这里我也不太好描述,还是自行问AI工具吧。

ICP 备案

点击网站备案_ICP 备案_备案迁移_App 备案_小程序备案_备案 - 阿里云开始备案。

准备材料

需要准备身份证,根据提示填写个人信息即可。

所需材料清单:

  • 身份证正反面照片(清晰、完整)
  • 手持身份证照片
  • 幕布照片(部分云服务商需要)
  • 域名证书
  • 服务器证明(购买凭证)

备案流程

  1. 填写备案信息
    • 主体信息(个人或企业信息)
    • 网站信息(网站名称、域名等)
    • 接入信息(服务器信息)

域名备注十分重要,如果是商业用途就需要上传营业执照等信息,这个我没经验,请自行研究。如果是个人用途,需要注明个人使用。比如我的域名其实是为了小程序的后端使用的,我备注的内容是xxx小程序后端API使用。 这样写是无法通过审核的,默认是有商业用途。所以我改成了:个人工具后端。 如果你是用于部署个人博客,有些省份是不能备案的,这个请你最好提前在购买域名的厂商客服那咨询一下。 有一些关键字是不能出现的,比如新闻、出版、教育、医疗等需要前置审批的内容。如果你涉及这些也需要咨询一下厂商客服。

  1. 上传资料

    • 按要求上传各类证件照片
    • 确保照片清晰可见
  2. 真实性核验

    • 部分地区需要视频核验
    • 按照要求进行人脸识别
  3. 提交审核

    • 云服务商初审(1-2 个工作日)
    • 管局审核(3-20 个工作日,各地不同)

重要提醒

不能和小程序备案同步进行! ICP 备案同一个主体(人)只能进行一个备案,需要当前备案结束后才能进行下一个。

备案时长:

  • 首次备案:通常需要 10-20 个工作日
  • 不同省份审核时间不同
  • 遇到节假日会延长

我两次备案都是在10天完成。如果你在阿里云购买的服务器也是在阿里云购买域名备案,在域名关联服务器时候选的是阿里云的,那么阿里云会送服务器时长。备案花了多少条就会送多少天。

备案网站命名规范:

  • 个人网站不能包含企业、行业等字样
  • 不能涉及新闻、出版、教育、医疗等需要前置审批的内容
  • 建议使用通用名称,如"XX 个人博客"、“XX 个人工具”

小程序备案

访问微信小程序公众平台进行备案。

备案流程

  1. 补充小程序信息

    • 小程序名称
    • 简介
    • 服务类目
    • 服务范围等
  2. 先提交微信官方审核

    • 微信会审核小程序信息是否合规
    • 审核时间通常为 1-3 个工作日
  3. 审核通过自动提交到工信部审核

    • 工信部审核通过后,小程序备案完成
    • 审核时间通常为 7-20 个工作日
  4. 审核不通过的处理

    • 审核不通过会电话联系,告知需要修改的地方
    • 注意:电话会被小米手机标记为广告电话,请在提交审核这几天及时接听广告电话,避免错过!
    • 小程序平台会站内信告知需要修改的地方,但是不如电话里说的清楚
    • 电话中不明白的可以及时问,但是错过电话就打不回去了

个人小程序备案说明

重要提示: 普通小工具类小程序不需要公司也不需要营业执照,用身份证提交就行。

但是小程序备注需要注明:给自己使用。

示例:

  • 比如我开发了一个 Strava 贴纸合成到照片的小程序
  • 我的备注是:用于给自己将两张图片合成为一张图片

备注填写技巧:

  • 明确说明是个人使用
  • 功能描述简洁明了
  • 避免涉及商业用途
  • 避免涉及社交、支付等敏感功能

小程序备案常见问题

Q1: 个人小程序可以选择哪些类目?

  • 工具类(如计算器、记事本)
  • 生活服务类(非商业)
  • 体育类
  • 教育类(非学历教育)

Q2: 个人小程序有哪些限制?

  • 不能涉及支付功能
  • 不能涉及社交功能
  • 不能涉及直播功能
  • 不能发布商业广告

Q3: 小程序备案失败常见原因

  • 备注未说明个人使用
  • 功能超出个人类目范围
  • 服务器未备案或备案信息不一致
  • 小程序名称不符合规范

小程序认证

小程序认证分为个人认证企业认证,两者权限有较大差异。

个人小程序(未认证)

限制:

  • 无法使用微信支付
  • 无法使用卡券功能
  • 无法使用附近的小程序
  • 部分接口受限
  • 每日访问用户数有上限

优势:

  • 免费
  • 审核流程简单
  • 适合个人学习和小工具开发

企业认证

认证费用: 300 元/年(微信官方收取)

所需材料:

  • 营业执照
  • 法人身份证
  • 对公账户信息(或法人微信支付)
  • 企业邮箱

认证流程:

  1. 登录小程序后台,点击"微信认证"
  2. 填写企业信息
  3. 上传营业执照等资料
  4. 选择认证方式:
    • 对公账户打款验证(0.01 元,需 1-3 个工作日)
    • 法人微信扫码验证(即时验证,推荐)
  5. 等待审核(通常 1-3 个工作日)

企业认证的优势:

  • 开通微信支付功能
  • 提升用户信任度
  • 解锁更多 API 接口
  • 无访问用户数限制
  • 可以使用附近的小程序功能
  • 可以发布卡券

认证注意事项

  1. 企业认证必须是已注册的企业,个体工商户也可以
  2. 年审: 企业认证每年需要重新认证,费用 300 元
  3. 认证后不可更改主体,请谨慎选择
  4. 认证信息要真实,虚假信息会导致认证失败甚至封号

开发环境配置

下载微信开发者工具

访问微信开发者工具下载页面,根据操作系统下载对应版本。

支持平台:

  • Windows 64 位
  • macOS
  • Linux

申请 AppID

  1. 登录微信公众平台
  2. 进入小程序后台
  3. 在"开发" -> “开发管理” -> “开发设置"中查看 AppID
  4. 复制 AppID 备用

创建第一个小程序项目

  1. 打开微信开发者工具
  2. 扫码登录
  3. 选择"小程序项目”
  4. 点击"+“创建项目
  5. 填写项目信息:
    • 项目名称
    • 目录(选择一个空文件夹)
    • AppID(填写之前复制的 AppID)
    • 开发模式(选择"小程序”)
    • 后端服务(选择"不使用云服务",如需要后期可更改)
  6. 点击"新建"

服务器配置

配置服务器域名

小程序只能与配置过的服务器域名进行网络通信。

配置步骤:

  1. 登录微信公众平台
  2. 进入"开发" -> “开发管理” -> “开发设置” -> “服务器域名”
  3. 点击"修改"
  4. 分别配置:
    • request 合法域名(用于 wx.request)
    • socket 合法域名(用于 wx.connectSocket)
    • uploadFile 合法域名(用于 wx.uploadFile)
    • downloadFile 合法域名(用于 wx.downloadFile)

域名要求:

  • 必须是 HTTPS 协议
  • 域名必须备案
  • 域名不能使用 IP 地址
  • 域名不能带端口号
  • 一个月内最多修改 5 次

SSL 证书申请

免费证书来源:

  • Let’s Encrypt(推荐,免费,90 天有效期)
  • 阿里云免费证书(1 年有效期)
  • 腾讯云免费证书(1 年有效期)

证书申请步骤(以阿里云为例):

  1. 登录阿里云控制台
  2. 搜索"SSL 证书"
  3. 选择"免费证书"
  4. 填写域名信息
  5. 选择 DNS 验证或文件验证
  6. 完成验证后下载证书
  7. 在服务器上配置证书(Nginx/Apache)

Nginx 配置示例

server {
    listen 443 ssl;
    server_name yourdomain.com;
    
    ssl_certificate /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;
    
    ssl_session_cache shared:SSL:1m;
    ssl_session_timeout 5m;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;
    
    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

# HTTP自动跳转HTTPS
server {
    listen 80;
    server_name yourdomain.com;
    return 301 https://$server_name$request_uri;
}

小程序发布流程

代码开发

  1. 在微信开发者工具中进行开发
  2. 使用模拟器和真机预览测试
  3. 确保代码符合微信小程序规范

代码上传

  1. 在开发者工具中点击"上传"
  2. 填写版本号和项目备注
  3. 上传成功后可以在小程序后台看到

用户隐私保护指引设置

必须要设置这一项,否则上线后小程序还是会有问题,但是这些问题在调试版本里都不会出现。

进入账号设置:Responsive Image

拉到底部找到用户隐私保护指引

Responsive Image

填写完需要审核,耐心等待。

为了能弹出对话框让用户同意隐私获取,需要在app.json中加入这行代码:

"__usePrivacyCheck__": true

这样小程序会在使用到获取隐私的接口时自动弹出来。

如果你的小程序定制化程度高,你也可以选择在你想要的时候弹出来,那么你需要参考官方文档微信公众平台,自行修改。

提交审核

  1. 登录微信公众平台
  2. 进入"版本管理"
  3. 选择刚上传的版本
  4. 点击"提交审核"
  5. 填写审核信息:
    • 配置功能页面(至少添加一个页面)
    • 填写测试账号(如有登录功能)
    • 补充说明
  6. 提交等待审核

审核时长:

  • 一般 1-7 个工作日
  • 首次审核可能较慢
  • 节假日会延长

审核不通过处理

常见驳回原因:

  • 服务类目不符
  • 涉及未开放的接口
  • 功能描述与实际不符
  • 页面存在违规内容
  • 测试账号无法登录

处理方法:

  • 查看驳回原因
  • 根据原因修改代码或说明
  • 重新提交审核

发布上线

审核通过后:

  1. 在"版本管理"中找到已通过审核的版本
  2. 点击"发布"
  3. 确认发布
  4. 等待几分钟,小程序即可被用户搜索和使用

开发注意事项

开发规范

  1. 代码规范

    • 使用 ES6 语法
    • 保持代码简洁易读
    • 合理使用组件化开发
    • 添加必要的注释
  2. 性能优化

    • 图片压缩,使用 webp 格式
    • 合理使用分包加载
    • 避免频繁的 setData 操作
    • 及时清理定时器和监听器
  3. 用户体验

    • 添加 loading 提示
    • 处理网络异常情况
    • 优化首屏加载速度
    • 适配不同机型

常见问题

Q1: 开发时如何调试 HTTPS 请求?

  • 开发者工具中可以勾选"不校验合法域名"
  • 但上线前必须配置好合法域名

Q2: 如何处理跨域问题?

  • 小程序不存在跨域问题
  • 但需要在服务器域名白名单中

Q3: 小程序包大小限制?

  • 主包不能超过 2MB
  • 所有分包总大小不能超过 20MB(使用分包优化后可达到更大)

Q4: 如何快速预览真机效果?

  • 点击"预览"生成二维码
  • 微信扫码即可在手机上预览

总结

微信小程序开发涉及的流程比较多,需要耐心完成每一步。主要流程总结如下:

  1. 购买服务器和域名(注意选择性价比高的)
  2. ICP 备案(10-20 个工作日,不能与小程序备案同时进行)
  3. 小程序备案(7-20 个工作日,个人备案注意备注"给自己使用")
  4. 小程序认证(企业认证 300 元/年,个人可不认证)
  5. 配置开发环境(下载开发者工具,申请 AppID)
  6. 配置服务器域名(申请 SSL 证书,配置 HTTPS)
  7. 开发与测试(遵循开发规范,注意性能优化)
  8. 提交审核与发布(耐心等待审核,及时处理驳回)

时间规划建议:

  • 备案阶段:预留 1 个月时间
  • 开发阶段:根据项目复杂度安排
  • 审核发布:预留 1 周时间

预算建议(个人小程序):

  • 服务器:100-500 元/年
  • 域名:10-100 元/年
  • SSL 证书:免费
  • 小程序注册:免费(个人)
  • 小程序认证:可选(企业 300 元/年)

希望这篇文章能帮助到正在开发小程序的朋友们,祝大家开发顺利!如有问题欢迎交流讨论。