php检测域名是否被微信封锁代码
我的站长站
2023-01-13
共人阅读
PHP 微信域名封锁检测源码,基于 cURL 请求微信官方跳转接口或腾讯安全中心接口,通过响应头 Location、状态码与页面特征判断域名是否被拦截 / 封禁。支持单域名查询与批量扫描,内置超时、重试、异常处理机制,可返回正常、拦截、封禁等状态码与提示。无需复杂配置,可嵌入站点巡检、域名池监控、防封预警等场景,快速识别微信内 “停止访问”“诱导违规” 等封锁状态。
<?php
// 页面编码
header("Content-type:application/json");
// 隐藏WARNING
error_reporting(E_ALL ^ E_WARNING);
// 获取headers
$checkUrl = get_headers('http://mp.weixinbridge.com/mp/wapredirect?url='.$_REQUEST['url']);
$headerStr = json_encode($checkUrl);
// 提取Location后面的
$Location_behind = substr($headerStr, strripos($headerStr, "Location"));
// 判断域名状态
if($Location_behind == 'false'){
// 该域名无法正常访问
$result = array(
'code' => 201,
'msg' => '该域名无法正常访问,暂时无法查询访问状态'
);
}else if(strpos($Location_behind,'weixin110') !== false){
// Location后面包含weixin110就是被封了
// 域名被封
$result = array(
'code' => 202,
'msg' => '域名被封'
);
}else{
// 域名被封
$result = array(
'code' => 200,
'msg' => '域名正常'
);
}
// 输出JSON
echo json_encode($result,JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE);
?>