Оптимизация сайта дело трудоемкое, в большинстве случаев в качестве рекомендаций указывают использовать Nginx, перед Apache. Но есть более простой и эффективный способ. Установка сайта за Cloudflare.
Что такое Cloudflare?
Cloudflare - американская компания, предоставляющая услуги CDN, защиту от DDoS-атак, безопасный доступ к ресурсам и серверы DNS. Cloudflare предоставляют сеть серверов по всему миру для проксирования веб трафика. Примерно треть всех сайтов в мире проксируется через Cloudflare.
CDN (Content Delivery Network) - Сеть доставки контента. Обеспечивает кеширование части контента или страниц целиком. CDN-сервера размещаются в разных частях мира, тем самым снижая расстояние между сервером и клиентом, отдавая трафик с ближайшего расположенного к пользователю сервера.
Использование Cloudflare открывает огромное количество преимуществ. Все началось с того, что мне была необходима поддержка HTTP/2, но для его поддержки необходим переход на свежую версию Apache, обновление ломало сервер и в необходимой версии не было поддержки мультипроцессинга (Apache-ITK).
Преимущества Cloudflare:
- Сокращение времени загрузки страниц
- Защита от DDOS
- Защита сайта
- Скорость
- Кеширование
- Возможность скрытия реального IP адреса сайта
- Поддержка HTTP/2
- Поддержка TLS 1.3
- Поддержка SPDY
- Бесплатный SSL сертификат для сайта
- Возможность создания фильтров (правил)
- В случае смены хостинга изменения произойдут мгновенно и не нужно ждать распространения DNS
- Это бесплатно
К минусам можно отнести, что за Cloudflare постоянно ставят не совсем легальный сайты и есть вероятность попасть под блокировку, так как за одним адресом "живут" тысячи сайтов.
Расположение серверов Cloudflare в мире:
Установка сайта за Cloudflare
- Создаем аккаунт (регистрируемся) https://dash.cloudflare.com/sign-up
- После регистрации заходим в консоль и жмем "Add a Site"
- Указываем свой домен
- Выбираем необходимый план (бесплатный внизу) и жмем "Continue"
- Ожидаем окончания операции, Cloudflare автоматически просканирует имеющиеся DNS записи
Если у вас в качестве суб домена указана *, то лучше эту запись убрать и подождать час (для обновления DNS записей), так как Cloudflare добавит около 200 записей, которые по его мнению могут быть. Удалять их придется вручную и по одному. Займет уйму времени.
Проверяем все ли данные указаны корректно, если все верно жмем "Continue" или вносим изменения.
- Далее Cloudflare укажет что необходимо указать в качестве NS записи для домена.
NS-запись (Name-сервер) - главный тип, определяющий адреса DNS-серверов, обслуживающих домен.
- Заходим на свой хостинг DNS и меняем NS записи, все управление будет происходить через панель Cloudflare.
По окончанию миграции DNS записи у своего провайдера можно удалить, если сделать это раньше, можно потерять доступ к сайту, лучше подождать не менее 7 дней, так как политики кеширования на proxy серверах могут хранить информацию о DNS значительное время.Иногда хостеры по той или иной причине ограничивают возможность менять NS записи самостоятельно, тогда для изменения NS записей придется обратиться в техническую поддержку.
- Ждем примерно сутки, пока DNS записи обновятся на всех серверах.
- Profit!
Если причина переезда на Cloudflare в том, что ваш сайт находится под DDOS атакой, в таком случае рекомендуется сменить хостинг. Зачастую смена IP адреса сервера не поможет, так как злоумышленники простым сканирование всех адресов хостинг провайдера найдут сайт и смогут атаковать его напрямую.Так же внимательно стоит отнестись к тому, что CMS может в ответах от сервера возвращать реальный IP адрес сервера и в защите от DDOS не будет смысла, так как атакующие смогут направить трафик напрямую на сервер.