Технологии

Решено

Закрыт

Warning: file(http://.../468_60.php) [function.file]:... - вопрос №847424

если обновлять страничку раз 5+- на месте вывода баннера такая вот ошибка

Warning: file(http://.../468_60.php) [function.file]: failed to open stream: HTTP request failed! HTTP/1.1 403 Forbidden in /.../index.php on line 100

line 100 вот эта строка $banners = file($filename);

сам скрипт:

$filename = 'http://.../468_60.php';

$banners = file($filename);

srand ((double) microtime() * 100000000);

$i = rand(0, sizeof($banners) -1);

$reklama = $banners[$i];

$reklama = str_replace (' ', '', $reklama);

echo $reklama;

может как томожно перезапускать скрипт в случаи ошибки или с line 100 что то делать.

Дополнение автора от ноябрь 26, 2013 г., 15:51:20

со своего сервера, не защищеного от частого скачевания. Попробую закешировать.   

Александр ноябрь 25, 2013 г.

  • Всего ответов: 1

  • Зимин Вадим - аватарка

    Зимин Вадим

    55-й в Технологиях

    Вы скачиваете с удалённого сервера и он защищается от частого
    скачивания с одного ip адреса.
    Вашу строку 100 надо заменить на скрипт кеширующий
    информацию в локальный файл и  обновляющий его раз в час.

    if (@!file_exists("./baner.tmp") || (time() — filemtime("./baner.tmp")) > 3600)
    {
    $z = file_get_contents($filename);

        if (strlen($z) > 100)
          {
            $ftmp = fopen("./baner.tmp", 'w' );
             fwrite($ftmp,$z);
             fclose($ftmp);
          }
    }

    $banners = file("./baner.tmp");

    ноябрь 26, 2013 г.
    Ответ понравился автору
    Лучший ответ по мнению автора