解决“海外主域名无法备案——又想使用微信API分享”的办法

问题描述

很多朋友和我有一样的问题——域名在海外,并且不再支持实名认证的范围,即便转回国内,也无法通过实名认证,从而无法备案。但是微信的API使用列表又需要一个备案的域名。

这时候如果想使用微信的API,特别是分享时候有描述和图片就变得无比困难。

解决方法

想了几个办法,最终选择了JS 判断UA然后重定向到微信专用的备案域名。代码如下(注意替换域名)

if(navigator.userAgent.indexOf('MicroMessenger') !== -1 && window.location.hostname.indexOf('blog.jing.do') !== -1){
  window.location = "https://wechatdomain.com" + window.location.pathname + window.location.search + window.location.hash;
}
else if(navigator.userAgent.indexOf('MicroMessenger') == -1 && window.location.hostname.indexOf('blog.jing.do') == -1){
  window.location = "https://blog.jing.do" + window.location.pathname + window.location.search + window.location.hash;
}

 

PS:

之前想过用IP判断,如果是中国的,直接导向备案域名一了百了。但是发现问题是:1. 这样两个域名访问一个资源,会有SEO问题。 2. 微信有海外服务器,无法完全做到防屏蔽。

还想过直接在CDN上做文章,CloudFlare上可以写worker,直接就能判断,这个比在执行页面上写JS要高效很多,但是无奈如果这个方案需要购买2个worker给两个域名才行,如果有人有兴趣我回头搞搞分享给大家。

喜欢的话订阅一个呗~第一时间收到文章更新哟~

发表评论

电子邮件地址不会被公开。