下面是一个 这段代码可以帮助您批量检查多个域名在微信中的封禁状态。只需要在 $domainList 数组中添加您想要检测的域名,脚本将自动检查这些域名的状态并显示结果。

<?php

// 待检测的域名列表
$domainList = array(
    'example.com',
    'anotherdomain.com',
    // 在这里添加更多需要检查的域名
);

// 遍历每个域名进行状态检测
foreach ($domainList as $domain) {
    $apiUrl = "https://down.ychengsnsm.com/wx/?url=" . urlencode($domain);

    // 初始化 cURL 会话
    $ch = curl_init();
    curl_setopt_array($ch, array(
        CURLOPT_URL => $apiUrl,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_FOLLOWLOCATION => true,
        CURLOPT_MAXREDIRS => 10,
        CURLOPT_TIMEOUT => 30,
        CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3',
        CURLOPT_SSL_VERIFYPEER => false,
    ));
    $response = curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);

    // 解析并输出检测结果
    if ($httpCode == 200 && strpos($response, '域名被封') === false) {
        echo "域名 {$domain} 状态正常\n";
    } else {
        echo "域名 {$domain} 可能已被封禁\n";
    }
    echo "<br/>";
}

?>

代码解析:

  1. 定义域名列表

    • $domainList 数组中的域名替换为您希望检测的实际域名。
  2. 逐一检查每个域名状态

    • 使用 cURL 发送 HTTP 请求到指定的 API 接口。
  3. 设置 cURL 选项

    • CURLOPT_URL:设置请求的 URL。
    • CURLOPT_RETURNTRANSFER:将响应作为字符串返回,而不是直接输出。
    • CURLOPT_FOLLOWLOCATION:遵循 HTTP 头中的重定向。
    • CURLOPT_MAXREDIRS:最大重定向次数。
    • CURLOPT_TIMEOUT:请求超时设置。
    • CURLOPT_USERAGENT:设置请求的用户代理。
    • CURLOPT_SSL_VERIFYPEER:禁用 SSL 证书验证(仅用于测试环境)。
  4. 处理 API 响应

    • 检查 HTTP 状态码是否为 200(成功),并在响应内容中查找 '域名被封' 以判断域名是否被封禁。
  5. 输出检测结果

    • 根据检查结果输出域名状态信息。如果域名正常或可能被封禁,将在页面上显示相应的提示。

可能的扩展功能:

  • 短信通知:结合短信服务 API 实现域名封禁的即时通知。
  • 自动域名切换:在检测到域名被封禁后,脚本可以自动切换域名,保持广告投放的连续性。

您可以在此基础上进行进一步开发,以满足具体需求。


1 声望2 粉丝