找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
楼主: rad

[iptv信源 资源分享或寻求] 江西电视台代理直播源(测试)

 火.. [复制链接]
发表于 2024-5-28 11:31 | 显示全部楼层
谢谢,谢谢分享!
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-28 16:37 | 显示全部楼层
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-28 17:56 来自手机 | 显示全部楼层
感谢分享。。。。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-28 18:28 | 显示全部楼层
谢谢,谢谢分享!
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-28 20:10 | 显示全部楼层
谢谢大佬的分享!非常棒。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-28 20:11 | 显示全部楼层
这个时间点是怎么上传的?
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-28 22:15 | 显示全部楼层
谢谢大佬的分享!
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-28 22:38 | 显示全部楼层
谢谢,谢谢分享!
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-29 10:37 | 显示全部楼层
谢谢楼主分享。。。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-29 10:50 | 显示全部楼层
<?php
// 请根据实际情况修改以下各行的ip、id、测试链接等信息:8,10,11,19
error_reporting(0);
//error_reporting(E_ALL);
//ini_set('display_errors', 1);

// 获取URL参数中的id
$id = isset($_GET['id']) ? $_GET['id'] : '1';
$cacheFile = 'cache/jiudian_cache_ips.txt';
$baseURL = "http://183.1.1.";
$endpoint = ":808/hls/{$id}/index.m3u8";
$maxConcurrency = 10;
$ipRanges = range(1, 254); // IP地址范围
$ip_arr = [];

// 检查IP是否有效
function check_ip($ip) {
    global $baseURL;
    $url = "{$baseURL}{$ip}:808/hls/1/index.m3u8";
    $headers = @get_headers($url, 1);
    return $headers && strpos($headers[0], '200') !== false;
}

// 初始化cURL句柄
function initCurlHandle($ip, $baseURL, $endpoint) {
    $url = $baseURL . $ip . $endpoint;
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_NOBODY, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 1); // 设置超时时间为1秒
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    return $ch;
}

// 添加cURL句柄到multi句柄
function addCurlHandle($ip, $multiHandle, &$handleMap, $baseURL, $endpoint) {
    $ch = initCurlHandle($ip, $baseURL, $endpoint);
    curl_multi_add_handle($multiHandle, $ch);
    $handleMap[(int)$ch] = $ip;
}

// 尝试从缓存文件读取IP数组
if (file_exists($cacheFile) && filesize($cacheFile) !== 0) {
    $ip_arr = unserialize(file_get_contents($cacheFile));

    // 如果缓存中的IP数组不为空,尝试随机选取一个IP并检查其有效性
    if (!empty($ip_arr)) {
        $ip = $ip_arr[array_rand($ip_arr)];
        $playurl = $baseURL.$ip.$endpoint;
        if (check_ip($ip)) {
            header('Location: ' . $playurl);
            exit;
        }
    }
}

// 缓存无效或没有有效IP,重新获取IP地址
$multiHandle = curl_multi_init();
$handleMap = [];
$currentIndex = 0;
$active = null;

// 初始化前10个并发请求
for ($i = 0; $i < $maxConcurrency && $i < count($ipRanges); $i++) {
    addCurlHandle($ipRanges[$currentIndex++], $multiHandle, $handleMap, $baseURL, $endpoint);
}

// 执行并管理cURL多请求
do {
    // 运行cURL句柄
    do {
        $mrc = curl_multi_exec($multiHandle, $active);
    } while ($mrc == CURLM_CALL_MULTI_PERFORM);

    // 检查是否有完成的请求
    while ($info = curl_multi_info_read($multiHandle)) {
        $ch = $info['handle'];
        $ip = $handleMap[(int)$ch];
        if (curl_getinfo($ch, CURLINFO_HTTP_CODE) === 200) {
            $ip_arr[] = $ip;
        }
        // 移除并关闭句柄
        curl_multi_remove_handle($multiHandle, $ch);
        curl_close($ch);
        unset($handleMap[(int)$ch]);

        // 保持并发量,添加新句柄
        if ($currentIndex < count($ipRanges)) {
            addCurlHandle($ipRanges[$currentIndex++], $multiHandle, $handleMap, $baseURL, $endpoint);
        }
    }

    // 等待活动连接
    if ($active) {
        curl_multi_select($multiHandle);
    }
} while ($active || $currentIndex < count($ipRanges));

// 关闭multi句柄
curl_multi_close($multiHandle);

// 将有效IP数组保存到缓存文件中
file_put_contents($cacheFile, serialize($ip_arr));

// 随机选取一个有效IP并重定向到播放地址
$ip = $ip_arr[array_rand($ip_arr)];
$playurl = $baseURL.$ip.$endpoint;
header('Location: ' . $playurl);
?>
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-29 11:37 | 显示全部楼层
刚好我是江西的
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-29 16:47 来自手机 | 显示全部楼层
谢谢分享谢谢分享
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-29 17:03 | 显示全部楼层
感谢分享。。。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-29 19:55 | 显示全部楼层
7777777777777777777试试看看
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2024-5-29 21:21 | 显示全部楼层
谢谢,谢谢分享
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-9-22 07:08

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

快速回复 返回顶部 返回列表