gpt4 book ai didi

PHP curl 获取 header 不适用于超过 300 个条目的 cron 作业

转载 作者:行者123 更新时间:2023-11-29 16:30:59 25 4
gpt4 key购买 nike

我有一个 cron 作业,可以扫描 URL 以查看它们是否在线。我的问题是它永远无法完成 844 个网站。它会在 260 到 300 多一点之间变化。

cron 作业每 30 分钟调用一次这个 PHP 文件,但它永远不会完成我的完整列表。我是否有什么做得不正确的地方来阻止循环完成任务?

// php file
//first part gets the csv file and reads the 844 sites

if (($handle = fopen("/public/csvs/" . $csv, "r")) !== FALSE) {
while (($data = fgetcsv($handle, 0, ",")) !== FALSE) {
$num = count($data);

for ($c = 0; $c < $num; $c++) {

$site = $data[$c];

$curl = curl_init();
curl_setopt_array( $curl, array(
CURLOPT_HEADER => true,
CURLOPT_NOBODY => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_URL => 'https://'.$site ) );
$headers = explode( "\n", curl_exec( $curl ) );
curl_close( $curl );

// gets the status of the URL then
fills it in the database.

$statushttp = $headers[0];



$mysqltime = date("Y-m-d H:i:s", $phptime);


//$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//$sql = $conn->prepare($sql);
$sql = "INSERT INTO csv (http_status,status,url,csv,related)
VALUES ('$statushttp','$status','$site','$csv',1)";

// use exec() because no results are returned

$conn->exec($sql);
//echo $site ." ".$statushttp."<br>";
//echo $statusCode."<br>";



}

}

}

最佳答案

在不同的服务器上尝试过,没有任何问题。

关于PHP curl 获取 header 不适用于超过 300 个条目的 cron 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53910142/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com