В 2020 году под FastCGI мы подразумеваем в основном одно - связку Nginx + PHP-FPM.
Данная связка веб сервера на основе php-FPM(Fast Process Manager) чаще всего превосходит apache по скорости, а веб-сервер nginx славится своей возможностью поддержки огромного количества подключений и быстротой подачи статического контента.
Скорее всего, Вы были направлены на данную статью специалистом нашей техподдрежки для того, чтобы ознакомиться с основными моментами и особенностями перевода Вашего сайта на новый режим работы.
В данной статье разберём все нюансы перевода сайта на FCGI.
Определяем возможности
Первым делом определим возможность перевода на новый режим. Для VPS серверов главным критерием для перевода является наличие установленной панели управления ISPmanager 5.
Если панели на сервере нет, то осуществить перевод не выйдет. Это касается как серверов с ОС BitrixVM 7, так и любых других кастомных сборок веб-стека на различных ОС.
Если у Вас установлена панель ISPmanager 5 на сервере, то независимо от редакции ОС Вы сможете попробовать перейти на новый режим.
Для услуг виртуального хостинга перевод на данный режим также возможен, но только для тарифов Битрикс.
Уточнить возможность перевода сайта на Вашем VPS или на вирт. хостинге можно перейдя к настройкам домена. Проверьте варианты в пункте "Режим работы PHP"
Как видим, нам доступен данный режим. Поэтому мы перейдём к следующей особенности.
Если у Вас нет панели управления или на тарифе вирт. хостинга нет нужно пункта в режимах работы PHP, то мы сможем предложить Вам перенос Ваших сайтов на новый сервер с панелью управления
Особенно актуален перенос для клиентов, которые не обновляли работу своего сервера с начала 2020 года или ранее. Производительность на новом режиме Вас обязательно порадует, либо останется на прежнем уровне и мы поможем обнаружить Вам проблемное место в работе сайта. В любом случае обновление ПО чаще всего сопровождается повышением отказоустойчивости и производительности.
Соответствие минимальным системным требованиям
Наличие возможности перевода мы проверили, теперь идёт речь о соответствии сервера минимальным требованиям.
Минимальные требования для работы ISPmanager на VPS сервере следующие:
x64(amd64) платформа
CPU 226 МГц
1 ядро
512 Мб RAM
10 Гб HDD
Судя по характеристикам для работы панели можно с уверенностью сказать, что панель будет работать на любом тарифе VPS сервера, которые мы предлагаем.
Однако, несмотря на это стоит учесть, что операционная система изначально также имеет свои минимальные требования. В случае с CentOS 7/8 требования следующие:
2 GB RAM
2 GHz or Higher Processor
20 GB Hard Disk
64-bit x86 System
В основном нас интересует объём памяти ОЗУ, т.к. все процессоры начиная с обычных тарифов у нас идут с тактовой частотой ядра от 2.5GHz+. Размер диска не так важен, вполне хватит 10-15G.
То есть в сумме по требуемой памяти мы получаем 2G+512M, итого требуется 2.5G для стабильной работы сервера. На практике это значение можно округлить до привычных 2 гигабайт памяти ОЗУ и докупить позднее, если это потребуется.
Почему мы заговорили об объёме памяти ОЗУ? А потому, что большинство переводов на новый режим осуществляется с целью повышения производительности сайта, и если Вы переносите сайты с виртуального хостинга на личный VPS сервер, то нужно быть готовым к тому, что работа сайта может не вписаться в рамки ресурсов нового VPS сервера. Особенно нехватка ресурсов на новом сервере выделяется в том случае, если в работе сайта есть программная проблема. Мы с удовольствием поможем Вам разобраться в работе сайта, чтобы оптимизировать его работу, тем самым сократив расходы на масштабирование ресурсов VPS сервера.
Пояснение расхода ресурсов сервера при переходе с виртуального хостинга на VPS
Когда Ваш сайт стоит на общем сервере(shared/виртуальный хостинг), то работа всех процессов веб-стека(nginx,apache,php,mysql и др.) поддерживается мастер-нодой, большим сервером с выделенными ресурсами памяти ОЗУ, ядер процессора и объёма диска.
Таким образом, при заказе услуги вирт. хостинга Вы оплачиваете только возможность создания определённого количества сайтов, баз данных и почтовых ящков согласно тарифу.
То есть Вас не беспокоит, что Ваш сайт в момент выгрузки может "съедать" до 4-6 гигабайт памяти ОЗУ, они с лёгкостью выделятся для Вашего сайта т.к. на мастер-ноде установлено, как правило, более 100 гигабайт памяти ОЗУ которая доступна для выделения под процессы пользовательских сайтов.
При заказе VPS Вы покупаете отдельную приватную машину, ресурсы(cpu/ram/disk) на которой ограничены согласно тарифному плану. Именно из-за незнания данных особенностей множество клиентов после переноса сайта на VPS негодуют, что на новом приобретённом VPS их сайт работает куда хуже, чем только что работал на виртуальном хостинге и пытаются безосновательно обвинить техподдержку в плохой настройке/кривом переносе и иногда даже в "выкачивании денег".
Вам следует чётко понимать, что если вопрос о производительности сайта встал ребром на виртуальном хостинге, то дальнейший путь оптимизации сайта лежит через тщательный анализ работы сайта нашими либо сторонними специалистами. Не стоит горячиться и делать поспешные выводы, мы всегда приводим нашего клиента к наилучшему результату!
Особенность работы htaccess, настройка конфига nginx
Пожалуй самая важная и сложная часть перевода сайта на новый режим - перенос правил из htaccess и адаптация стандартного конфига nginx под Вашу CMS.
Всё дело в том, что при режиме mod_apache или CGI Ваш сайт работает по правилам из файла .htaccess, который лежит в корне Вашего сайта.
Обработка данного файла является задачей веб-сервера apache. Согласно содержащимся правилам в файле htaccess, apache направляет запрос из браузера в соответствующее место на сайте.
Также на htaccess может быть завязана настройка параметров php и работа ЧПУ(человекопонятный URL).
Так как при переходе на новый режим из связки убирается apache, то и файл htaccess перестаёт работать. Соответственно, Ваш сайт может отображаться неверно или страницы будут отдавать код 404.
Чтобы полноценно настроить сайт на новый режим, требуется наличие конфига nginx, который будет содержать необходимые редиректы, рерайты и правила обработки запросов для Вашей CMS.
На данный момент мы имеем заготовки конфига nginx и готовы предложить Вам перевод на PHP-FPM таких популярных CMS, как:
- Bitrix
- ocStore(opencart)
- CS-Cart
- Wordpress
- WebAsyst
Предупреждаем, что при нестандартной сборке CMS с дополнениями и модулями, которые кардинально меняют работу сайта, не всегда получается применить наши заготовленные шаблоны. В таком случае владельцу сайта требуется квалифицированная помощь от специалиста по настройке конфига nginx именно под Вашу CMS. Мы не занимаемся разработкой конфига под nginx и также не конвертируем существующие правила из htaccess для nginx своими силами.
Мы всегда с радостью поможем Вам попробовать перевести сайт на новый режим и постараемся добиться от нового режима большей производительности, проведём аудит текущих проблем в работе сайта! Обращайтесь к нам, если для Вас важна скорость Вашего сайта.