concrete5

Поделись знанием:
Перейти к: навигация, поиск
concrete5
Тип

CMS

Разработчик

Franz Maruna
Andrew Embler

Написана на

PHP

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

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

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

5.7.5.6 (25 января 2016)

Лицензия

Лицензия MIT

Сайт

[concrete5.org/ e5.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 заняла первое место на [www.dreamhost.com/r.cgi?1473740 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 — необязательное требование (используется только для визуального сравнения версий страниц)

Возможности

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

Напишите отзыв о статье "Concrete5"

Примечания

  1. [www.h-online.com/open/news/item/Concrete5-CMS-updated-741231.html Concrete5 CMS updated], The H
  2. [www.readwriteweb.com/archives/concrete_releases_open-source_cms_to_general_avail.php Concrete Releases Open-Source CMS to General Availability], Phil Glockner, ReadWriteWeb (англ.)
  3. [www.fiercecontentmanagement.com/story/one-one-ric-shreves-water-stone/2009-04-28 One on One with Ric Shreves of Water & Stone], «Concrete5 is also interesting as it is highly usable and very client-friendly.»
  4. [www.cmscritic.com/top-5-content-management-systems-for-the-complete-beginner/ Top 5 Content Management Systems for the Complete Beginner], Mike Johnston, CMS Critic journal
  5. [www.concrete5.org/about/ concrete5 :: About]
  6. [www.waterandstone.com/book/2010-open-source-cms-market-share-report?utm_source=OSCMS+MailingList&utm_medium=email&utm_campaign=was+2010+OSCMS+Pre-Release+Announcement «2010 Open Source CMS Market Share Report»], Water & Stone, December 10, 2010.
  7. [sourceforge.net/community/potm-200810/ SourceForge.net: Project of the Month, October 2008]
  8. [blog.dreamhost.com/2011/02/01/meet-the-app-contest-winners/ Meet the App Contest Winners!]
  9. [awards.cmscritic.com/past-winners/ The Winners]
  10. [www.cmscritic.com/2014-best-free-php-cms/ The Winner of the 2014 People’s Choice CMS Award for Best Free PHP CMS]
  11. [awards.cmscritic.com/past-winners/ The Winners]
  12. [twitter.com/cmscritic/status/689826702160072705 CMS Critic on Twitter: "The 2015 Award Winner for Best #CMS for Designers is @concrete5 #concrete5 #cmsawards t.co/qVBNxOo7oN"]
  13. [www.concrete5.org/documentation/background/system_requirements/ concrete5 :: System Requirements]
  14. [www.cmswire.com/cms/web-cms/drupal-and-joomla-to-lose-market-share-to-concrete5-web-cms-004347.php Drupal and Joomla to Lose Market Share to concrete5 Web CMS?], David Roe, cmswire.com
  15. [sixrevisions.com/web-applications/10-promising-content-management-systems/ 10 Promising Content Management Systems], Jacob Gube, Six Revisions
  16. [www.concrete5.org/documentation/background/version_history/5-4-1/ 5.4.1 Release Notes]
  17. [www.concrete5.org/about/owners-tour/ concrete5 :: Owners Tour]
  18. [www.concrete5.org/documentation/background/version_history/5-5-2/ concrete5 :: 5.5.2 Release Notes]
  19. [www.concrete5.org/documentation/developers/pages/mvc-approach concrete5 developers documentation. MVC-approach]
  20. [www.concrete5.org/documentation/background/version_history/older_versions/5-4-2-2/ 5.4.2.2 Release Notes].
  21. [bestfreecms.ru/concrete5-cms.html concrete5: обзор и уязвимости]

Литература

  • Remo Laubacher. [www.packtpub.com/concrete5-beginners-guide/book concrete5 Beginner's Guide]. — [PACKT] publishing, March 2011. — 320 p. — ISBN 978-1-84951-428-6.

Ссылки

  • [www.concrete5.org/ Официальный сайт Concrete5 на английском языке] (англ.)
  • [github.com/concrete5/concrete5 Страница проекта на Github] (англ.)
  • [www.concrete5.org/community/international/ Официальный список сайтов, распространяющих локализации C5 (включая русификации)] (англ.)
  • [grou.ps/concrete5ru/home Русскоязычное сообщество Concrete5] (рус.)

Отрывок, характеризующий Concrete5

Наполеон тотчас заметил то, что они делали, и догадался, что они были еще не готовы. Он не захотел лишить их удовольствия сделать ему сюрприз. Он притворился, что не видит господина Боссе, и подозвал к себе Фабвье. Наполеон слушал, строго нахмурившись и молча, то, что говорил Фабвье ему о храбрости и преданности его войск, дравшихся при Саламанке на другом конце Европы и имевших только одну мысль – быть достойными своего императора, и один страх – не угодить ему. Результат сражения был печальный. Наполеон делал иронические замечания во время рассказа Fabvier, как будто он не предполагал, чтобы дело могло идти иначе в его отсутствие.
– Я должен поправить это в Москве, – сказал Наполеон. – A tantot, [До свиданья.] – прибавил он и подозвал де Боссе, который в это время уже успел приготовить сюрприз, уставив что то на стульях, и накрыл что то покрывалом.
Де Боссе низко поклонился тем придворным французским поклоном, которым умели кланяться только старые слуги Бурбонов, и подошел, подавая конверт.
Наполеон весело обратился к нему и подрал его за ухо.
– Вы поспешили, очень рад. Ну, что говорит Париж? – сказал он, вдруг изменяя свое прежде строгое выражение на самое ласковое.
– Sire, tout Paris regrette votre absence, [Государь, весь Париж сожалеет о вашем отсутствии.] – как и должно, ответил де Боссе. Но хотя Наполеон знал, что Боссе должен сказать это или тому подобное, хотя он в свои ясные минуты знал, что это было неправда, ему приятно было это слышать от де Боссе. Он опять удостоил его прикосновения за ухо.
– Je suis fache, de vous avoir fait faire tant de chemin, [Очень сожалею, что заставил вас проехаться так далеко.] – сказал он.
– Sire! Je ne m'attendais pas a moins qu'a vous trouver aux portes de Moscou, [Я ожидал не менее того, как найти вас, государь, у ворот Москвы.] – сказал Боссе.
Наполеон улыбнулся и, рассеянно подняв голову, оглянулся направо. Адъютант плывущим шагом подошел с золотой табакеркой и подставил ее. Наполеон взял ее.
– Да, хорошо случилось для вас, – сказал он, приставляя раскрытую табакерку к носу, – вы любите путешествовать, через три дня вы увидите Москву. Вы, верно, не ждали увидать азиатскую столицу. Вы сделаете приятное путешествие.
Боссе поклонился с благодарностью за эту внимательность к его (неизвестной ему до сей поры) склонности путешествовать.
– А! это что? – сказал Наполеон, заметив, что все придворные смотрели на что то, покрытое покрывалом. Боссе с придворной ловкостью, не показывая спины, сделал вполуоборот два шага назад и в одно и то же время сдернул покрывало и проговорил:
– Подарок вашему величеству от императрицы.
Это был яркими красками написанный Жераром портрет мальчика, рожденного от Наполеона и дочери австрийского императора, которого почему то все называли королем Рима.
Весьма красивый курчавый мальчик, со взглядом, похожим на взгляд Христа в Сикстинской мадонне, изображен был играющим в бильбоке. Шар представлял земной шар, а палочка в другой руке изображала скипетр.
Хотя и не совсем ясно было, что именно хотел выразить живописец, представив так называемого короля Рима протыкающим земной шар палочкой, но аллегория эта, так же как и всем видевшим картину в Париже, так и Наполеону, очевидно, показалась ясною и весьма понравилась.
– Roi de Rome, [Римский король.] – сказал он, грациозным жестом руки указывая на портрет. – Admirable! [Чудесно!] – С свойственной итальянцам способностью изменять произвольно выражение лица, он подошел к портрету и сделал вид задумчивой нежности. Он чувствовал, что то, что он скажет и сделает теперь, – есть история. И ему казалось, что лучшее, что он может сделать теперь, – это то, чтобы он с своим величием, вследствие которого сын его в бильбоке играл земным шаром, чтобы он выказал, в противоположность этого величия, самую простую отеческую нежность. Глаза его отуманились, он подвинулся, оглянулся на стул (стул подскочил под него) и сел на него против портрета. Один жест его – и все на цыпочках вышли, предоставляя самому себе и его чувству великого человека.
Посидев несколько времени и дотронувшись, сам не зная для чего, рукой до шероховатости блика портрета, он встал и опять позвал Боссе и дежурного. Он приказал вынести портрет перед палатку, с тем, чтобы не лишить старую гвардию, стоявшую около его палатки, счастья видеть римского короля, сына и наследника их обожаемого государя.
Как он и ожидал, в то время как он завтракал с господином Боссе, удостоившимся этой чести, перед палаткой слышались восторженные клики сбежавшихся к портрету офицеров и солдат старой гвардии.
– Vive l'Empereur! Vive le Roi de Rome! Vive l'Empereur! [Да здравствует император! Да здравствует римский король!] – слышались восторженные голоса.
После завтрака Наполеон, в присутствии Боссе, продиктовал свой приказ по армии.
– Courte et energique! [Короткий и энергический!] – проговорил Наполеон, когда он прочел сам сразу без поправок написанную прокламацию. В приказе было:
«Воины! Вот сражение, которого вы столько желали. Победа зависит от вас. Она необходима для нас; она доставит нам все нужное: удобные квартиры и скорое возвращение в отечество. Действуйте так, как вы действовали при Аустерлице, Фридланде, Витебске и Смоленске. Пусть позднейшее потомство с гордостью вспомнит о ваших подвигах в сей день. Да скажут о каждом из вас: он был в великой битве под Москвою!»
– De la Moskowa! [Под Москвою!] – повторил Наполеон, и, пригласив к своей прогулке господина Боссе, любившего путешествовать, он вышел из палатки к оседланным лошадям.
– Votre Majeste a trop de bonte, [Вы слишком добры, ваше величество,] – сказал Боссе на приглашение сопутствовать императору: ему хотелось спать и он не умел и боялся ездить верхом.
Но Наполеон кивнул головой путешественнику, и Боссе должен был ехать. Когда Наполеон вышел из палатки, крики гвардейцев пред портретом его сына еще более усилились. Наполеон нахмурился.
– Снимите его, – сказал он, грациозно величественным жестом указывая на портрет. – Ему еще рано видеть поле сражения.
Боссе, закрыв глаза и склонив голову, глубоко вздохнул, этим жестом показывая, как он умел ценить и понимать слова императора.


Весь этот день 25 августа, как говорят его историки, Наполеон провел на коне, осматривая местность, обсуживая планы, представляемые ему его маршалами, и отдавая лично приказания своим генералам.
Первоначальная линия расположения русских войск по Ко лоче была переломлена, и часть этой линии, именно левый фланг русских, вследствие взятия Шевардинского редута 24 го числа, была отнесена назад. Эта часть линии была не укреплена, не защищена более рекою, и перед нею одною было более открытое и ровное место. Очевидно было для всякого военного и невоенного, что эту часть линии и должно было атаковать французам. Казалось, что для этого не нужно было много соображений, не нужно было такой заботливости и хлопотливости императора и его маршалов и вовсе не нужно той особенной высшей способности, называемой гениальностью, которую так любят приписывать Наполеону; но историки, впоследствии описывавшие это событие, и люди, тогда окружавшие Наполеона, и он сам думали иначе.
Наполеон ездил по полю, глубокомысленно вглядывался в местность, сам с собой одобрительно или недоверчиво качал головой и, не сообщая окружавшим его генералам того глубокомысленного хода, который руководил его решеньями, передавал им только окончательные выводы в форме приказаний. Выслушав предложение Даву, называемого герцогом Экмюльским, о том, чтобы обойти левый фланг русских, Наполеон сказал, что этого не нужно делать, не объясняя, почему это было не нужно. На предложение же генерала Компана (который должен был атаковать флеши), провести свою дивизию лесом, Наполеон изъявил свое согласие, несмотря на то, что так называемый герцог Эльхингенский, то есть Ней, позволил себе заметить, что движение по лесу опасно и может расстроить дивизию.