WP - PHP cURL или get_headers() приводят к ошибке 404

1) Я использую движок WordPress. 2) У меня есть числовой массив () с 800+ ссылками в нем, как это.

То, что я пытаюсь сделать, это запустить функцию foreach() и проверить, существует ли ссылка (не возвращает ошибку 404).

Я попробовал 2 функции:

1)

<?php
foreach($links as $link) {
    $file_headers = @get_headers($link);
    if(strpos($file_headers[0],'404') === false) {
        $toDeleteLinks[] = $link;
    }
}
?>

поэтому согласно этой первой функции массив $toDeleteLinks должен содержать все ссылки, которые возвращают ошибку 404. используя функции get_headers() здесь...

2)

<?php
foreach($links as $link) {
    $handle = curl_init($link);
    curl_setopt($handle,  CURLOPT_RETURNTRANSFER, TRUE);
    $response = curl_exec($handle);
    $httpCode = curl_getinfo($handle, CURLINFO_HTTP_CODE);
    if($httpCode != 404) {
        $toDeleteLinks[] = $link;
    }
    curl_close($handle);
}
?>

этот второй должен сделать то же самое, просто используя cURL..

НО в обоих случаях меня перенаправляют на страницу wordpress 404.php ((. Думаю, это из-за большого количества ссылок.

Можете ли вы помочь мне получить решение для этого? Используйте другую функцию вместо или однако...

Благодарю.

0 ответов

Другие вопросы по тегам