concrete5

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
concrete5
Логотип программы concrete5
Скриншот программы concrete5
Редактирование контента в cms concrete5
Тип CMS
Разработчики Franz Maruna
Andrew Embler
Написана на PHP
Операционная система Кроссплатформенность
Последняя версия
Репозиторий github.com/concretecms/c…
Лицензия лицензия MIT
Сайт concretecms.com (англ.)

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

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

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

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

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

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

[12].

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

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

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

С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].

В ядре системы используются Symfony 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. Специально сформированный запрос удалённого пользователя сможет запустить в браузере жертвы произвольный код сценария.

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

  1. Release 9.2.7 — 2024.
  2. Concrete5 CMS updated Архивная копия от 7 августа 2011 на Wayback Machine, Heinz Heise[en]
  3. Concrete Releases Open-Source CMS to General Availability Архивировано 30 августа 2011 года., Phil Glockner, ReadWriteWeb[en]
  4. One on One with Ric Shreves of Water & Stone Архивная копия от 19 июня 2011 на Wayback Machine, «Concrete5 is also interesting as it is highly usable and very client-friendly.»
  5. Top 5 Content Management Systems for the Complete Beginner Архивная копия от 5 июня 2011 на Wayback Machine, Mike Johnston, CMS Critic journal
  6. concrete5 :: About. Дата обращения: 21 августа 2010. Архивировано 22 августа 2010 года.
  7. «2010 Open Source CMS Market Share Report» Архивировано 15 сентября 2012 года., Water & Stone, December 10, 2010.
  8. SourceForge.net: Project of the Month, October 2008. Дата обращения: 17 августа 2010. Архивировано из оригинала 25 августа 2009 года.
  9. Meet the App Contest Winners! Дата обращения: 31 мая 2011. Архивировано из оригинала 12 июня 2011 года.
  10. 1 2 The Winners Архивировано 3 февраля 2014 года.
  11. The Winner of the 2014 People’s Choice CMS Award for Best Free PHP CMS. Дата обращения: 12 января 2015. Архивировано 12 января 2015 года.
  12. CMS Critic on Twitter: "The 2015 Award Winner for Best #CMS for Designers is @concrete5 #concrete5 #cmsawards https://t.co/qVBNxOo7oN»
  13. concrete5 :: System Requirements. Дата обращения: 3 ноября 2012. Архивировано 8 ноября 2012 года.
  14. Drupal and Joomla to Lose Market Share to concrete5 Web CMS? Архивная копия от 3 июня 2011 на Wayback Machine, David Roe, cmswire.com
  15. 10 Promising Content Management Systems Архивная копия от 24 июля 2011 на Wayback Machine, Jacob Gube, Six Revisions
  16. 5.4.1 Release Notes. Дата обращения: 2 июня 2011. Архивировано из оригинала 18 мая 2011 года.
  17. concrete5 :: Owners Tour. Дата обращения: 22 августа 2010. Архивировано из оригинала 26 августа 2010 года.
  18. concrete5 :: 5.5.2 Release Notes. Дата обращения: 25 мая 2012. Архивировано из оригинала 27 мая 2012 года.
  19. concrete5 developers documentation. MVC-approach. Архивировано 9 мая 2010 года.
  20. 5.4.2.2 Release Notes. Дата обращения: 4 сентября 2014. Архивировано из оригинала 4 сентября 2014 года.
  21. concrete5: обзор и уязвимости. Дата обращения: 18 декабря 2012. Архивировано 4 декабря 2012 года.

Литература[править | править код]

  • Remo Laubacher. concrete5 Beginner's Guide. — [PACKT] publishing, March 2011. — 320 p. — ISBN 978-1-84951-428-6.

Ссылки[править | править код]