concrete5

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
concrete5
Concrete5 logo.jpg
Concrete5 screenshot.png
Тип

CMS

Разработчик

Franz Maruna
Andrew Embler

Написана на

PHP

Операционная система

Кроссплатформенность

Последняя версия

5.7.5.6 (25 января 2016)

Лицензия

Лицензия MIT

Сайт

concrete5.org

concrete5 — CMS с открытым исходным кодом, распространяемая по лицензии MIT[1][2]. Система, написанная на языке PHP и JavaScript, в частности активно использует jQuery, использует базу данных MySQL, а также панель управления с версии 5.5 использует Twitter Bootstrap. Concrete5 сочетает в себе интуитивно понятный новичкам пользовательский интерфейс с широким набором возможностей.[3][4] По информации разработчиков, систему можно использовать как для создания персональных сайтов, так и для полнофункциональных Интернет-изданий[5].

История[править | править вики-текст]

Разработка системы управления содержимым concrete5 началась в 2003 году двумя программистами — Францем Маруна и Эндрю Эмблером. Изначально система называлась «Concrete» и с 2003 по 2008 год разработчики использовали CMS исключительно для своих проектов. В 2008 году с выходом пятой версии к названию системы добавилась цифра 5, а сама система стала доступна для бесплатного использования на основе лицензии MIT.

В подготовленном Water & Stone отчёте «2010 Open Source CMS Market Share Report»[6], отмечен рост числа web-студий, занимающихся поддержкой Concrete5, превышающий аналогичные показатели для других CMS, то же самое и с динамикой видимости Concrete5 в поисковых системах. Отмечается заметный рост и других параметров, отслеживаемых Water & Stone для этой системы.

Награды и достижения[править | править вики-текст]

  • Проект месяца на сайте SourceForge.net в октябре 2008 года[7].
  • 1 февраля 2011 года CMS заняла первое место на DreamHost one-click app contest[8].[значимость факта?]
  • В 2012 году 1 место в номинациях «Best Open Source CMS» и «Best Budget CMS» по мнению пользователей портала «CMS Critics»[9].
  • В 2014 году 1 место в номинации «Best Free PHP CMS» по мнению пользователей портала «CMS Critics»[10].
  • В 2015 году 1 место в номинации «Best cms for designers» по мнению пользователей портала «CMS Critics»[11]

[12].

Системные требования[13][править | править вики-текст]

  • PHP 5.2.x или выше, со следующими модулями: CURL, zip, mcrypt, openssl, GD, mysql, mbstring
  • MySQL 5.x или выше
  • Apache/IIS (разработчиками рекомендуется Apache)
  • Python 2.2 — необязательное требование (используется только для визуального сравнения версий страниц)

Возможности[править | править вики-текст]

Редактирование контента в cms concrete5

Сoncrete5 даёт пользователям возможность добавлять и редактировать контент прямо на странице сайта[14][15]. В шаблоне concrete5 задается набор и местоположение на странице редактируемых областей, в которые контент-менеджер может добавлять «блоки» (модули) с содержимым. В качестве содержимого может использоваться как простой контент (текст или изображение), так и более сложный: слайдшоу, опрос, форма или любые другие модули. Concrete5 позволяет создавать произвольное количество типов страниц, которые предполагают различное расположение редактируемых областей в одном и том же дизайне (в то же время и дизайн каждой страницы сайта может быть совершенно разным). Начиная с версии 5.4.1 была добавлена поддержка блогориентированных блоков: навигации по датам, тегов и навигационных блоков Next/Previous[16].

Кроме того в concrete5 каждую страницу могут редактировать несколько человек, при этом страница видна только редакторам с соответствующими правами, а видимой для посетителей страница становится только после того, как её одобрит администратор сайта[17]. Т. е. редакторами/менеджерами сайта могут быть несколько человек. Также есть возможность дать полный (для редактирования) доступ к определенным разделам сайта для определенных пользователей (контент-менеджеров), чтобы каждый из них вел свой собственный раздел на сайте.

Другие возможности системы вкратце перечислены ниже:

  • поддержка полностраничного кэширования;
  • 21 модуль для наполнения контентом устанавливаются по умолчанию;
  • установка дополнительных блоков (модулей);
  • изменение дизайна сайта с помощью «шаблонов»;
  • использование ЧПУ (человеко-понятный URL) (по умолчанию отключено);
  • разграничение прав доступа пользователей к редактированию сайта;
  • применение редактора WYSIWYG для наполнения сайта контентом;
  • До версии concrete 5.5.2 использован редактором фотографий на базе кода Picnik; С версии concrete 5.5.2 редактирование фотографий осуществляется с помощью библиотек jQuery[18]
  • специальный API для разработчиков.

В релизе 5.4.2 появляется Composer Beta - раздел в панели администрирования, который позволяет быстрее создавать однотипные страницы и публиковать их. Предполагаемое назначение - публикация блогов, новостей и т.п.

Архитектура[править | править вики-текст]

Concrete5 — это объектно-ориентированное PHP-приложение, построенное в соответствии с принципами MVC[19].

В ядре системы используются Symphony Framework и Doctrine ORM (до версии 5.7, соответственно, Zend Framework и ADOdb). Модульная организация системы позволяет разработчикам расширять её функциональность, не затрагивая при этом само ядро, в частности, посредством перегрузки классов в корневой директории системы.

Уязвимости[править | править вики-текст]

В Concrete5 были обнаружены (и устранены начиная с версии 5.4.2.2[20]) некоторые уязвимости [21], позволяющие удаленному пользователю провести XSS нападение:

1-я уязвимость появилась из-за некорректной проверки входных данных, которые отправляются параметром «cID» при установленном «bID» в index.php/tools/blocks/page_list/blog_rss. С помощью сообщения об ошибке при настроенном на нецелочисленное значение «cID» удаленный пользователь получает доступ к полному пути установки.

2-я уязвимость возникла по причине некорректной обработки входящих данных, отправляемых «rcID» параметром в index.php/login/forgot_password. Специально сформированный запрос удаленного пользователя сможет запустить в браузере жертвы произвольный код сценария.

Примечания[править | править вики-текст]

Литература[править | править вики-текст]

Ссылки[править | править вики-текст]