Система управления контентом Joomla, в целом, отличается своей надежностью, периодичными обновлениями и гибкостью настройки и оптимизации.
Многие вебмастера выбирают ее именно из-за этих критериев. Однако версия Joomla 3 "из коробки" требует ряда дополнений, которые можно получить установкой плагинов, модулей и компонентов.
При том, постоянное обновление Joomla вызывает конфликты с кодом установленных дополнений, которые если не обновлять вызывают ошибки и замедление работы сервера, особенно если он работает в связке Nginx + Apache. Установленный лимит в 30 сек. на обработку процесса не достаточен и процесс не успевает завершиться. Как итог мы видим банер ошибки 504.
Поначалу, многие бросаются в сторону увеличения временного лимита обработки процесса, к примеру до 300 или 700 секунд, однако если добавляете много контента такие ожидания вызывают лишние раздражения. Проще решить проблему на корню.
Для это необходимо:
- Создать в корне сайта папку (директорию) и скопировать туда все файлы сайта. Убедиться, что скопированы, полностью, все файлы можно сравнив их количество.
- Делаем копию БД и прописываем ее в configuration.php, который находится в новой директории. Таким образом у нас появляется дубликат сайта в директории сайта, который не жалко угробить тестами.
- Переходим в административную часть Joomla 3 и переходим в Менеджер плагинов - Плагины. Отключаем плагины по мере их установки, т.е. новые отключаем первыми, при этом одновременно проверяем исполнение процесса и появление ошибки 504.
Десять минут такого эксперимента привел нас к плагину Content - JSitemap Pingomatic, который был установлен очень давно и относился к такому компоненту как JSitemap. Не смотря на то, что компонент идеально работал, один из его плагинов вошел в конфликт с последним обновлением Joomla 3.6.5. Плагин JSitemap Pingomatic пришлось отключить, что между прочем, никак не повлияло на боту сайта, в худшем значении этого выражения.
Результатом деактивации плагина стало возобновление скорости работы сайта по редактированию и сохранению материалов. Ошибка 504 ушла в прошлое.