域名被微信屏蔽拦截的原因和防封方案
域名在微信内分享推广被拦截是常有的事情,最近在各大论坛博客也有很多朋友给我留言问我有没有解决方案,这其实不用问的,肯定是有解决方案的。举个最简单的例子,我们公司最近在微信内推的一批网页广告链接,一个多月了没有一条链接被拦截的。这其实就能很好的证明是有办法避免域名被微信拦截的,所以特写这篇文章给大家说说我们是怎么做到的。在此之前我们必须知道是哪些原因导致了域名被微信拦截,然后逐个解决。
为什你的域名会被微信拦截?
1、微信会有系统检测,只要检测到你的域名带有诱导分享、擦边球(不良信息、虚假信息等)的内容,就会自动拦截。
2、同行或用户举报次数过多,触发微信团队人工检测,手动封杀你的域名。
3、分享转发量过大,触发系统自动检测,当检测到内容有违规的,就会封杀。
4、通常只要微信后台或者人工有检测到主体侵权,内容侵权,暴力内容,推广、营销信息、广告类内容,不实信息内容,骚扰类内容,误导类内容,就会将你的域名加入黑名单,用户访问就会提示“该网页已停止访问”。
为什么同样性质的内容,别人分享推广就不会被拦截,而我们就很快被拦截呢?
大家会有这样的疑问,为什么自己的内容跟别人是一样的性质,甚至里面的敏感词都一样,别人的确可以无压力地在微信推广,而自己的域名一推,稍微有点量就被封了。通常这种情况都是因为有人直接用裸域名去推广,而有些人则是给域名加了防护。
那出现这样的情况要怎么办呢?
办法就是一定要用技术手段给域名加防封防护处理,通过防封来有效地保护你的域名。
首先:你需要有一个域名检测系统,实时检测域名访问状态,推荐r8date 测试接口,接口检测速度快,体现效果很好。
然后:你需要一个给域名加防护,推荐366tool测试接口,我们团队就是用的他们的防封,效果还不错吧,主要是服务好,随时帮你处理问题,不像有些平台收了钱就放养了。
最后想说的一点是:以上两个平台的使用前提是你的域名没有被封,如果被封是需要更换一条正常的域名的。那么域名被封了又不想换要怎么办?加一个微信跳转功能,实现微信内自动跳转默认浏览器打开即可,推荐几个免费的测试接口:
mindjump免费接口,大象跳转免费接口,366API免费接口
域名防封原理是怎么样的呢?
1、域名检测+微信域名切换(反向跳转)
2、多级矩阵加密跳转两种方式
相对来说,后面这种多级矩阵加密跳转的效果更好,更稳定。我们最近是在用366tool的防封技术实现的域名防封。下面我分享一段我们研究的一段代码供大家参考
$url = "http://www.366tool.com"; $params = array( ‘appkey‘ =>‘appkey‘,//您申请的APPKEY ‘url‘ =>‘www.366tool.com‘,//需要查询的网站 ); $paramstring = http_build_query($params); $content = go51wCurl($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 go51wCurl($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; }