分享微信域名防封,域名频繁被封如何解决

想通过活动营销来推广产品的用户,肯定经常遇到微信域名被封的情况,想申请恢复访问过程复杂,而且由个人或小团队经营的网站基本只能放弃,花钱解封价格昂贵,遇到恶意举报还是一样被封,如此循环带来的损失无疑是很大的,都是在做推广,为何有人推广起来畅通无阻,而有人的微信域名频繁被封,其实微信被拦截被封无法访问很常见,经过测试以后还是可以防止微信域名被封的,并且很多团队也是通过微信域名防封/防红的技术让域名存活的时间更长。

那么微信为什么被封?

  1. 域名来源,在微信有过黑历史,被人使用过在微信有过不良记录,后来被人为各种方法恢复后转到你手上,这种域名很容易被封。

  2. 域名分享转发量太大。

  3. 域名指向的站点内容违规,站点内容被微信记录html结构特征。

  4. 微信对内容违规的站点URL记录结构特征。

  5. 同行竞争,恶意举报。

  6. 服务器ip被加入封杀黑名单。

方案解析

第一步

你需要有一个微信域名检测接口,自己开发或是购买都可以。

第二步

配置你的程序,用三套域名A、B、C,比如说分享出去的域名是A,这里面A被称作是主域名。

点开后跳到B,跳转之前检测一下B有没有被封,这里面的B就称作是落地域名。通常情况下落地域名B需要准备几十甚至上百个,利用域名检测接口可以轻松实现被封自动切换。

那C是干什么用的呢,微信4月25日以后改变了分享规则,通过JSSDK分享域名必须是公众号后台绑定域名,不能像以前那样想分享什么域名就可以分享什么域名了。

C域名专门用作分享,在B域名下触发分享条件以后跳到C域名,自定义分享出去以后,C域名从程序上设置又跳回到A。

这样A->B->C->A循环跳转

代码示例

$url = “http://api.monkeyapi.com”;
$params = array(
‘appkey’ =>‘appkey’,//您申请的APPKEY
‘url’ =>‘www.monkeyapi.com’,//需要查询的网站
);

p a r a m s t r i n g = h t t p b u i l d q u e r y ( paramstring = http_build_query( paramstring=httpbuildquery(params);
c o n t e n t = C u r l ( content = Curl( content=Curl(url, $paramstring);
r e s u l t = j s o n d e c o d e ( result = json_decode( result=jsondecode(content, true);
if(KaTeX parse error: Expected '}', got 'EOF' at end of input: …{ var_dump(result);
}else {
//请求异常
}

/**
* 请求接口返回内容
* @param string $url [请求的URL地址]
* @param string $params [请求的参数]
* @param int i p o s t [ 是 否 采 用 P O S T 形 式 ] ∗ @ r e t u r n s t r i n g ∗ / f u n c t i o n C u r l ( ipost [是否采用POST形式] * @return string */ function Curl( ipost[POST]@returnstring/functionCurl(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;

}

你可能感兴趣的:(移动开发,php)