504 Gateway Timeout при парсинге

149
09 марта 2018, 15:57

Есть страница с преподавателями. Мне нужно скачать фотку каждого преподавателя, сжать ее и сохранить на сервере.

Вот часть моего кода:

public static function loadTeacherPhoto($nick)
{
    /* Операции с изображениями */
    $LINK = "http://fitu.npi-tu.ru/$nick";
    $imgFullPath = self::TEACHER_PHOTO_PATH."$nick.jpg";
    $html = file_get_html($LINK);
    $imgHref = self::SITE_HREF.$html->find("aside div p img")[0]->src;
    $img = file_get_contents($imgHref);
    echo "<b>$nick ЗАГРУЖЕНА 1 --- ";
    file_put_contents($imgFullPath, $img);
    $simpleImage = new SimpleImage();
    $simpleImage->load($imgFullPath);
    echo "<b>$nick ЗАГРУЖЕНА 2 --- ";
    $simpleImage->resize(150, 300);
    echo " ИЗМЕНЕН РАЗМЕР --- ";
    $simpleImage->save($imgFullPath);
    echo " СОХРАНЕНА </b><br><br><br>";
}

public static function loadAllTeahcersPhotos()
{
    $html = file_get_html(self::TEACHER_LIST_HREF);
    foreach($html->find('table tbody tr td a') as $row)
    {
        $nick = $row->href; 
        self::loadTeacherPhoto($nick);
    }
}

Всего преподавателей 31. Скрипт всегда останавливается на 25-ом преподавателе и либо не выводит никаких ошибок, либо выводит ошибку 504 gateway time-out. При этом на моем сервере сохраняются все 25 изображений и сжимаются, как и должны, кроме последнего.

Увеличивал в php.ini максимальное время выполнения скрипта, не помогает.

Что мне делать?

READ ALSO
Как проверить работоспособность Geoip

Как проверить работоспособность Geoip

Может есть какие-то сервисы которые помогут зайти на сайт под разными ip? необходимо проверить правильно ли определяется страна Сам сайт...

138
MYSQLI + PHP | Вывод информации из бд

MYSQLI + PHP | Вывод информации из бд

Здравствуйте, как с помощью mysqli+php вывести из таблицы "users" в столбце "hwid" строчку в которой "login"(еще один столбец) будет равен NickName(допустим...

153
Проблема с функцией CopyFile()

Проблема с функцией CopyFile()

Пишу код, который предусматривает копирование файлаРешил пока использовать функцию CopyFile(

165
MATHFUNCSDLL_EXPORTS

MATHFUNCSDLL_EXPORTS

Что делает данный код

165