Уроки
-
Введение
-
Поисковая оптимизация
- Битые ссылки
- Карта сайта
- Микроразметка
- Robots.txt
- Ссылки
- Текст
- Дубликаты
- Базовое
- Картинки
-
Скорость
-
Минификация
-
Минификация CSS
Минификация JavaScript файлов
Минификация inline CSS кода
Минификация картинок без потери качества
Минификация JavaScript файлов
Неиспользуемый CSS код
Оптимизация data:URL картинок
Формат анимированных изображений
Неиспользуемый JavaScript код
Использование WebP
Отсутствует сжатие картинки
Битрейт видео
-
Сокращение запросов
-
Переизбыток мелких картинок
Несгруппированные CSS файлы
Несгруппированные JavaScript файлы
Переизбыток шрифтов
Наличие сквозных CSS, JS файлов
Наличие монохромного шрифта
Загрузка дубликатов файлов
Использование JS фасадов
Перенаправление JavaScript кодом
Добавление ленивой загрузки
Редирект с/на www версию
- Шрифты
- Время загрузки
- Настройки сервера
- Картинки
- Первое содержимое
-
Минификация
- Мобильность
- Баги
-
Удобство
- Соцсети
- Browserconfig.xml
- Манифест веб-приложения
- Фавиконы
- Почта
- Базовое
- Читаемость текста
-
Безопасность
- Шифрованное соединение
- Эксплойты
- Уязвимости
Блокирующие запросы в другую страну
Чем дальше от пользователя находятся сервера, тем больше потребуется времени свету, чтобы пройти расстояние туда и обратно. Эта задержка называется ping и зависит от расстояния, количества хопов (количества роутеров между пользователем и сайтом), а также маршрута следования сетевых пакетов.
Блокирующие файлы — это такие файлы, без загрузки которых страница не выдаст событие loaded. А это ключевое событие в стадийности загрузки страницы. Без его срабатывания страница попросту зависнет. То есть если блокирующий файл не может загрузиться, то браузер будет ждать до 30 секунд, ожидая его загрузки.
Если вы используйте зарубежные сервисы как счётчики, API карт, системы авторизации, платёжные системы, CDN сервисы, каптчи и т.д., то позаботьтесь о том, чтобы подключение этих скриптов было неблокирующим. Иначе, все, часть или единичные пользователи получат сломанную страницу, из-за проблем в сети или доступностью зарубежных сервисов.
Подключайте JavaScript функцию в событии ready.
Пример на jQuery:
$(document).ready(function () {
var script = document.createElement("script"); //
script.src = "https://example.com/script.js"; // путь до вашего файла
document.head.appendChild(script);
});
Пример на нативном JavaScript:
window.addEventListener('load', function() {
var script = document.createElement("script"); //
script.src = "https://example.com/script.js"; // путь до вашего файла
document.head.appendChild(script);
});