(摔键盘声)各位运营新人注意了!昨天我帮客户设置公众号菜单时,明明绑定了域名,点击却跳出“未授权”的红字警告!这破问题我去年遇到八回,今天就把这些血泪经验揉碎了喂给你!
先问个扎心的:你是不是直接把域名填到公众号后台就完事了?哎哟我的亲,这样操作100%会报错!就像你去银行取钱,光带身份证不行,还得输密码对吧?
一、微信域名授权是门玄学
上个月隔壁王老板开餐馆,把官网域名填成http://www.xxx.com,结果用户点菜单直接跳转到竞争对手页面!后来发现是没配置JS安全域名!记住这三个必须项:
- 业务域名(防止钓鱼)
- JS接口安全域名(防脚本攻击)
- 网页授权域名(OAuth登录)
举个栗子对比:
错误操作 | 正确配置 | 后果 |
---|---|---|
填根域名xxx.com | 同时填xxx.com和http://www.xxx.com | 移动端闪退 |
用http协议 | 必须https | 授权失败 |
不带端口号 | 带:443端口 | 苹果手机异常 |
二、手把手急救指南
▶ 场景1:配置后还是报错
- 登录微信公众平台→设置→公众号设置
- 网页授权域名那栏,必须去掉http://!
- 最多填5个域名,用英文逗号隔开
(上周我手滑多打了个空格,折腾到凌晨两点...)
▶ 场景2:需要跳转第三方链接
教你个野路子:
- 准备个中间页比如jump.xxx.com
- 在nginx配置302跳转
- 把这个中间页填到白名单
实测这个方法帮客户解决了H5游戏授权问题!
▶ 场景3:用云开发环境
腾讯云uniapp用户注意:
- 在cloudbaserc.json添加:
json**"wechatMiniProgram": { "appid": "你的APPID", "cloudcontainer": "你的环境ID"}
- 必须开通微信云托管!否则真机调试永远报错!
三、这些坑我替你踩Q:为什么备案通过了还是不能用?
A:微信要单独验证!去年帮客户搞活动,阿里云备案通过的域名,在微信后台验证时死活不通过。后来发现是DNS解析TTL值设了14400,改成600等10分钟就过了!
Q:测试号怎么玩转域名?
A:巨坑预警!测试号的授权域名:
- 必须包含「test」字样
- 不能用已备案域名
- 最多保留7天
我有次用clienttest.xxx.com,结果第二天就被清空白名单...
Q:小程序和公众号能共用域名吗?
A:可以!但得在mp.weixin.qq.com和developers.weixin.qq.com两边同时配置。我们公司商城系统就这么干的,节省50%运维成本!
四、微信官方不说的小技巧
(压低声音)说个机密:用宝塔面板的「反向代理」功能可以突破域名限制!把第三方链接代理到自己的二级域名,比如:
- 新建网站proxy.xxx.com
- 反向代理到target.com
- 把proxy.xxx.com加入白名单
这样用户实际访问的是target.com,但微信认为你在自己域名下!
最后扔个王炸:遇到“redirect_uri参数错误”,别急着改代码!先检查:
- 公众号后台填的是https://开头
- 编码后的URL去掉%20空格
- 用encodeURIComponent处理两次!
这招救了客户双十一的活动页面!