现在玩微信生态圈的朋友都知道,域名不死是不可能的。在大环境下我们应该怎么去解决这个微信防封体系呢。
下面我来给大家讲解分享下我们的团队经验。
只能尽量多的手段去增加防封的概率,没有行之有效独步天下的手段,腾讯也一直增加技术封锁,防封是一个长期对抗的过程。
有什么好的预防措施呢?
那就是我们的api接口就派上用场了。就是猴子数据域名防封系统接口,目前我们的防封有两种,一种是域名检测+域名轮换,这种针对普通的推广是可以解决的。但是稍微有难度一点的就需要我们的加密解封接口。加密防封采用多层加密跳转系统,里面有秒封秒解模式和公众号授权模式。如果产品涉及到需要公众号授权登录和自定义分享的话就需要用到防封的公众号授权模式。在我们沟通的过程中,大部分客户都是推广的公众号业务域名,然而用这种方式推广的后果就是封业务域名和封公众号,可谓是损失惨重啊。那么猴子数据的公众号授权防封模式就完美的解决了这一问题。今天猴子数据在这里不过多分享,只起个抛砖引玉的作用,更多防封技术和原理我们可以共同探讨。接下来分享下域名检测+切换的技术原理,有兴趣的朋友可以了解下:
需要有一个微信域名检测接口,自己开发或是购买都可以。
配置你的程序,用2套域名A、B比如说分享出去的域名是A,这里面A被称作是主域名。点开后跳到B,
跳转之前检测一下B有没有被封,这里面的B就称作是落地域名。通常情况下落地域名B需要准备几十甚至上百个,利用域名检测接口可以轻松实现被封自动切换。这样就会不影响到自己的运营,节约人工成本。(这种方案其实是比较耗域名的,加密防封的话可以解决这一问题)
在这我附加下我们的研究源码给开发者技术参考下,当然这只是其中的一种方式,更多防封的方法可以+vx:xcxsf001或者qq3602249720交流探讨。
$url = "http://api.monkeyapi.com";
$params = array(
'appkey' =>'appkey',//您申请的APPKEY
'path' =>'/home',//需要切换的路由(非必传)
);
$paramstring = http_build_query($params);
$content = monkeyCurl($url, $paramstring);
$result = json_decode($content, true);
if($result) {
var_dump($result);
}else {
//请求异常
}
/**
* 请求接口返回内容
* @param string $url [请求的URL地址]
* @param string $params [请求的参数]
* @param int $ipost [是否采用POST形式]
* @return string
*/
function monkeyCurl($url, $params = false, $ispost = 0)
{
$httpInfo = array();
$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
if ($ispost) {
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
curl_setopt($ch, CURLOPT_URL, $url);
}else {
if ($params) {
curl_setopt($ch, CURLOPT_URL, $url.'?'.$params);
} else {
curl_setopt($ch, CURLOPT_URL, $url);
}
}
$response = curl_exec($ch);
if ($response === FALSE) {
//echo "cURL Error: " . curl_error($ch);
return false;
}
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$httpInfo = array_merge($httpInfo, curl_getinfo($ch));
curl_close($ch);
return $response;
}