Обнаружена скрытая ошибка DR rev 6.
В день, когда упал mhost, обнаружилось, что стали страшно тормозить все сайты, работающие под MODx. Следствие показало, что происходит это из-за запроса картинок счетчиков от
имени веб-сервера. Картинки находятся на удаленных серверах, один из которых (или несколько) "упал".
Вообще-то счетчики находятся в HTML-коде страниц и
веб-серверу совершенно незачем их запрашивать. Это делает бразузер посетителя, не спрашивая у веб-сервера с MODx. Ну, недоступна картинка - будет пустое место.
Дальнейшее расследование показало, что виноват
DirectResize. При отключенном плагине никаких запросов от веб-сервера к удаленным хостам не идет.
Корень зла таился в вызове функции
getimagesize, которой передавался URL недоступной картинки. Вот здесь и идет запрос от имени веб-сервера.
По идее, "посторонние" картинки DR вообще не должны обрабатываться, в параметре path задано только "assets/images".
Пришлось в функции
absolutePath($path)
вместо строки
if (strstr($path, "://")) return $path;
записать
if (strstr($path, "://")) return "";
Теперь функция getimagesize обращается только к файлам своего сервера. Не вижу необходимости обрабатывать удаленные картинки, которые в любой момент могут оказаться недоступными.
Хотелось бы узнать мнение автора плагина.