Мое знакомство с системой управления e107 началось с весьма конкретной задачи: существовал некий сайт, постоянно взламываемый злоумышленниками. Сайт был (до взлома естественно) экономически эффективным и приносил владельцу прибыль. Были и конкуренты естественно.
Первое логическое решение, пришедшее мне в голову – порыться в гугле на предмет уязвимостей системы. По опыту могу сказать, что такой способ поиска уязвимостей системы управления контентом обычно мало эффективен. Как правило из-за того, что прежде, чем описание взлома успеет распространиться в сети, обычно дыру успевают залатать. Кроме того, способы взлома не так очевидны и удобны, и повторить их достаточно непросто. Однако с этой системой все было по-другому. Количество уязимостей CMS e107 впечатляет. На официальном сайте CMS разработчики рекомендуют обновиться до последней версии и утверждают, что в последнем на данный момент дистрибутиве все проблемы безопасности решены.
Идти путем, предложенным разработчиками системы, мне показалось нецелесообразным по двум причинам:
- Сравнительная плотность ошибок в коде очень велика. Идеального кода конечно нет, но если сравнить с другими Open Source системами, то ошибок и недоработок значительно больше. Это ставит под сомнение профессионализм разработчиков.
- Скорость реакции на проблему. Лекарство появляется на сайте только через 6 дней после топика на форуме с подробным описанием взлома. Долго.
- Сравнительно небольшое количество русских сайтов на этой CMS. Возможно, проблемы еще просто не обнаружены.
Что касается третьего пункта, то в нем я не совсем уверен, т.к. обнаружил несколько популярных информационных порталов, реализованных на этой CMS.
В общем, было принято решение перейти на более надежную систему управления контентом. Я рекомендовал 1С-Битрикс (ее надежность — факт признанный; кроме того, почти во всех редакциях поставляются модули Web-антивируса и проактивной защиты для сайта). Было написано несколько скриптов по миграции контента и сайт заработал на новой CMS.
В процессе создания сайта необходимо уделять пристальное внимание CMS, на которой будет реализован интернет-проект. Я отрицательно отношусь к идее создания сайтов на самописных или редких системах управления. Выбор самописной CMS оправдывает себя только в том случае, если реализуемая задача узка и специфична. В остальных случаях целесообразно использовать либо коммерческие CMS с поддержкой разработчиками либо популярные бесплатные системы управления контентом, разрабатываемые живым community и с адекватной поддержкой.
Для того, чтобы правильно выбрать CMS для сайта, нужно обратится к специалистам. К хорошим специалистам.