小程序是离用户最近的一种产品形态:不用安装、微信里直接打开、能支付能推送。但它和纯静态网站不一样——小程序不能直连你自己的电脑,必须有一台公网可访问的服务器,而且对域名、HTTPS、备案都有硬性要求。这篇把全流程讲通,看完就知道每一步该干什么、要买什么。
一、先搞清楚:小程序为什么需要服务器
很多人以为小程序是"纯前端",这是一个常见误解。小程序的真实架构是这样的:
用户手机
↓
微信客户端(内置渲染层)
↓ 只能发 HTTPS/WSS 请求
你的服务器(Nginx + 后端程序 + 数据库)几个硬性规则,一开始就要知道,不然后面全是返工:
- 网络请求只支持 HTTPS 和 WSS,HTTP 明文请求会被直接拦截——所以服务器必须有 SSL 证书
- 服务器域名必须在微信后台配置为"request 合法域名",没配的域名请求全部失败
- 域名必须完成 ICP 备案(大陆主机),港澳台及海外主机无需备案但访问体验另说
- 域名配置每月有修改次数限制,定好域名再下手,别频繁更换
对 NAT 型服务器的影响:小程序后端跑在 NAT 型机器上完全没问题(对外服务靠端口映射),但购买前必须确认商家支持 443 端口映射——有些 NAT 产品为了省 IP 不开放 80/443,买错了 HTTPS 直接没法配。这一点在买服务器前必问商家的 8 个问题里专门列了,下单前照着问。
二、准备工作:账号、工具、AppID
1. 注册小程序账号
打开微信公众平台(mp.weixin.qq.com)注册,选"小程序"。这里会碰到第一个分叉:
| 主体类型 | 能做什么 | 不能做什么 |
|---|---|---|
| 个人主体 | 工具类、内容展示类 | 不能开通微信支付,部分类目不支持 |
| 企业主体(公司/个体户) | 全品类,含支付 | 需要营业执照,年审费 300 元/年 |
建议:想清楚要不要收钱。要支付就必须企业主体,个人主体后面想改,主体类型不能直接变更,得重新注册账号。
2. 安装微信开发者工具
官方 IDE,Windows / macOS 都有,下载后扫码登录即可。它内置模拟器、真机预览、上传提交、性能分析,是开发调试的主战场。
3. 拿到 AppID
在公众平台「开发」-「开发管理」-「开发设置」里能看到 AppID。创建项目时填它——AppID 才能用真机预览和上传审核,选"测试号"很多功能受限。
三、三种开发路线,选对省半年功夫
| 路线 | 适合谁 | 说明 |
|---|---|---|
| 原生开发 | 想深入学小程序 | 直接写 WXML/WXSS/JS,官方文档最全 |
| 跨端框架(uni-app / Taro) | 想一套代码跑小程序 + H5 + App | Vue/React 语法,生态成熟,商业项目主流 |
| 云开发(微信云开发 TCB) | 不会运维、想快速验证 | 免买服务器,后端跑在微信云上,按量计费 |
不确定选哪条?先看这篇:小程序云开发 vs 自建服务器后端。简单结论: demo 阶段用云开发,正式上线要数据自主权就自建。
四、项目结构:五分钟看懂一个页面
一个页面就是同目录下的四个文件:
pages/index/
├── index.js ← 逻辑:数据、事件、网络请求
├── index.json ← 配置:导航栏标题、引用组件
├── index.wxml ← 结构:类似 HTML 的标签
└── index.wxss ← 样式:类似 CSS,支持 rpx 自适应单位app.js / app.json 是全局入口:全局样式、页面路径列表、底部 tab 栏都在这里配。pages 数组里没登记的页面,编译时直接找不到。
五、网络请求:配好"合法域名"才通
前端调用接口的标准写法:
wx.request({
url: 'https://api.yourdomain.com/user/info', // 必须是 HTTPS
method: 'GET',
header: { 'Authorization': 'Bearer ' + token },
success(res) {
console.log(res.data)
},
fail(err) {
// 域名没配合法、证书过期、跨域,都在这里暴露
console.error(err.errMsg)
}
})然后在微信公众平台「开发管理」-「开发设置」-「服务器域名」里,把 https://api.yourdomain.com 加进 request 合法域名。注意:
- 只填域名,不要带路径(
https://api.yourdomain.com,不是https://api.yourdomain.com/api) - HTTPS 证书不被信任时请求也会失败,证书链要完整
- 开发阶段可以勾选"不校验合法域名",但上线前必须关掉,否则审核被拒
域名解析怎么配、A 记录 CNAME 区别,见域名解析与 DNS 记录详解。
六、从开发到上线的完整流程
注册账号 → 完善主体信息 → 拿到 AppID
→ 本地开发(开发者工具)
→ 真机预览调试
→ 上传代码(生成"体验版")
→ 体验版自测 / 发给测试员
→ 提交审核(选对类目!)
→ 审核通过 → 发布上线提交审核时最容易踩的三个坑:
- 类目选错:功能和你选的类目对不上,直接拒。支付功能必须选含支付的类目
- 没有隐私协议:现在必须提供《用户隐私保护指引》,收集什么数据写清楚,空模板会被拒
- iOS 上的虚拟支付:iOS 端不能展示虚拟商品购买入口(知识付费、会员、游戏充值都算),安卓可以——这是苹果的规矩,绕不过去
审核被拒的完整原因清单和应对,单独整理在小程序审核被拒原因与解决。
七、服务器要买什么配置
小程序后端的资源消耗比游戏服温和得多,但并发峰值要按活动场景算:
| 阶段 | 用户规模 | 推荐配置 |
|---|---|---|
| 开发测试 | 内部 | 1核2G / 2Mbps |
| 上线初期 | 日活几百 | 2核2G–2核4G / 3–5Mbps |
| 成长期 | 日活几千 | 2核4G–4核8G / 5–10Mbps |
| 活动期 | 秒杀/直播 | 4核8G 起 + 负载均衡 |
系统选 Linux(Ubuntu 22.04 / Debian 12),环境用宝塔面板或 Docker 都行,选型对比见网站环境怎么选:LNMP / 宝塔 / Docker。地域上,用户和备案都在大陆就买大陆节点,延迟和速度都最优。
结语
小程序的门槛不在代码,在合规三件套:备案域名、HTTPS 证书、合法域名配置。把这三样和一台稳定的服务器准备好,剩下的就是写页面调接口了。
需要搭小程序后端服务器,可以看看财富云计算:NAT 型云服务器支持 443 端口映射,域名备案一站式协助,2核4G 起步就能跑起来,价格比独立 IP 机型省一半以上——小程序这种"要 HTTPS 但不需要独立 IP"的场景,NAT 型刚好对症。
延伸阅读
- 网站环境怎么选:LNMP 手动 / 宝塔面板 / Docker / 云开发
- 问卷表单系统搭建:SurveyKing / Formbricks,数据自己收
- 图床搭建:Lsky Pro / Lychee,自托管图片托管方案
- 邮件列表搭建:listmonk 自托管 Newsletter,把读者握在自己手里
- 文档站点搭建:MkDocs / VuePress / Docsify,产品文档与技术手册方案
- RSS 阅读器搭建:FreshRSS 自托管,把信息流拿回自己手里
- 短链接服务搭建:Shlink 自托管,链接数据自己掌握
- 网站状态监控页搭建:Uptime Kuma,服务器挂了第一时间知道

[...]想在网上卖东西,WooCommerce 是全世界装机量最高的电商方案——WordPress 加个插件就是一家完整网店。但"能卖货"和"敢收钱"之间隔着好几道坎:支付、SSL、性能、安全。这篇一次讲通。一、先想清楚:你适不适合自建电商需求建议商品 < 100、交易量小、想完全掌控自建 WooCommerce(本文方案)商品多、要营销工具、懒得运维用 SaaS 商城(有赞/微店类),付年费买省心[...]
2026-10-18 回复
[...]netsh advfirewall firewall add rule name="GameRange" dir=in action=allow protocol=UDP localport=26901-26903完整的 Windows 环境准备(远程桌面连接、运行库安装、SteamCMD 用法、开机自启、8 个常见坑)见:《Windows 云服务器开服通用前置教程》→ htt[...]
2026-10-18 回复