Бесплатная версия CloudFlare имеет ограниченный список форматов файлов для кэширования. Но при этом имеет опцию кэшировать все до 512мб на файл.nnСоздаем Page rule для домена в панели cloudflare, для хранения тяжелых статических файлов. Ниже пример настройки кэширования:nnОсновная настройка «Кэшировать все» Cache everything. TTL укажите который актуален именно для вашего проекта. В нашем случае считаем, что статические файлы не меняются. После данной настройки любой запрос к вашему домену будет кэшироваться.nnnnНа следующем этапе настраиваем nginx. В конфиг nginx.conf в раздел server {} для домена добавляем следующее:n
if ($args !~ ^$){nnreturn 404;nn}nnif ($request ~* (^.*\?.*$)){nnreturn 404;nn}
Первое условие предназначено для защиты от DDoS, так как включено кэширование всего то при запросе archive.7z?ver=killemmall CloudFlare сильно нагрузит сервер. Второе условие также защита от тех запросов, которые проскочат первую проверку. Файл с параметром ? может быть получен 42 раза, соответственно если размер файла большой то канал сильно просядет. Что бы не было таких проблем используется вторая проверка.nnn
Преимущества использования cloudflare:
- 28 ДЦ для домена
- увеличение скорости загрузки сайта вдвое
- снижение потребления трафика на 60%
- уменьшение нагрузки сервера на 65%
Недостатки:
- кэшировать можно только файлы размером до 512мб(для бесплатного тарифа)
- файлы для доступа к которым используется «?» теряем либо рискуем проблемами в работе
Что бы данная система хорошо и продуктивно работала, главное её настроить правильно иначе можно получить негативный результат.nnУ нас имеется опыт настройки CloudFlare, можем настроить его для Ваших ресурсов, подробности [email protected]