Недавно столкнулся с интересной задачей. Необходимо было выполнить мониторинг сайта, т.е. посмотреть живой ли сайт или нет. Задача тривиальная и в принципе решение простое, посмотреть статус страницы если 200 то все ок. Но тут меня настигло разочарование, так как человек который поставил задачу сказал, что это не подтверждение того, что сайт жив. Нужно посмотреть элементы, подгрузились ли стили и так далее.
Данное условие меня поставило в тупик. У кого есть какие идеи, как мониторить сайт по доп. требованиям. Вручную смотреть страницу, если честно вообще не хочется. Хочется запустить программу и получить через секунду результат.
Для этого используется такой же скрипт как у "Яндекс.Метрика". Скрипт проверяет на уровне браузера ошибки загрузки и отображения и сообщает о них на сервер мониторинга.
А вы заказчику встречный вопрос - а если страница и вживую грузится с ошибками или загруженные скрипты выдают ошибки, то что тогда? Пусть выдаёт не расплывчатое требование, а жесткое. "Сайт жив" - это не техническое требование, а человеческое ощущение. Кода 200 вполне достаточно. Как исполнитель можете настаивать, что этого достаточно. У вас тоже есть права.
Основные проблемы в таких "заданиях" - мало кто думает что делать, когда что-то идёт не так. И когда такую хрень пытаются переложить на разработчика, то тут надо таким "заказчикам" напоминать, что они точно так же отвечают за результат, как и вы.
Anton, Можно сделать все элементы страницы inline и вот у вас уже все стили, скрипты и картинки при загрузке страницы имеются. В одном файле. И больше ничего не подгрузится.
Можно подгрузить стили, но опять это ничего не даст.
Просто понятие "жив" всё-таки требует каких-то других определений, а не просто наличия файлов.
Пусть ваш "заказчик" вам объяснит, а как он сам, глядя на страницу определяет жив сайт или нет?
А что мешает поверить доступность всех объектов для загрузки (страница + подключаемые файлы), если по всем объектам сервер отдает 200 (условно) есть шанс что у клиента в конкретном браузере все загрузится. Можно еще pdf формировать (Athena PDF) там все будет видно (это для заказчика), хотя согласен с Захаров Александр надо конкретизировать требования, объяснив заказчику, что даже 100% проверка на тестовом стенде может не дать 100% результата у клиента.