Drupal (Друпал) — система управления содержимым, используемая также как каркас для веб-приложений (CMF), написанная на языке PHP и использующая в качестве хранилища данных реляционную базу данных (поддерживаютсяMySQL, PostgreSQL и другие). Drupal является свободным программным обеспечением, защищённым лицензией GPL, и развивается усилиями энтузиастов со всего мира.
Архитектура Drupal позволяет применять его для построения различных типов сайтов — от блогов и новостных сайтов до информационных архивов или социальных сетей. Имеющуюся по умолчанию функциональность можно увеличивать подключением дополнительных расширений — «модулей» в терминологии Drupal. Наиболее важные функции, предоставляемые Drupal «из коробки»:
- единая категоризация всех видов содержимого (таксономия) — от форумных сообщений до блогов и новостных статей
- широкий набор свойств при построении рубрикаторов: плоские списки, иерархии, иерархии с общими предками, синонимы, родственные категории
- вложенность категорий любой глубины
- поиск по содержимому сайта, в том числе поиск по таксономии и пользователям
- разграничение доступа пользователей к материалам (ролевая модель)
- динамическое построение меню
- поддержка XML-форматов:
- вывод документов в RDF/RSS
- агрегация материалов с других сайтов
- BlogAPI для публикации материалов с помощью внешних приложений
- авторизация через OpenID
- символьные осмысленные URL (иначе «человеко-понятные» — ЧПУ)
- переводы интерфейса сайта на разные языки, а также поддержка ведения разноязычного контента
- возможность создания сайтов с пересекающимся содержимым (например общей базой пользователей или общими настройками)
- раздельные конфигурации сайта для различных виртуальных хостов (мультисайтинг), в том числе собственные наборы модулей и тем оформления для каждого подсайта.
- уведомления о выходящих обновлениях модулей
Установка Drupal
sudo nano /etc/apache2/sites-available/drupal.conf
<VirtualHost *:80>ServerName имя_сайта.ruServerAlias имя_сайта.ru www.имя_сайта.ruDocumentRoot /var/wwwимя_сайта.ru<Directory var/www/имя_сайта.ru>AllowOverride All</Directory></VirtualHost>
mysql -u root -pcreate database drupal;CREATE USER ‘drupal’@’localhost’ IDENTIFIED BY ‘*****’;GRANT ALL PRIVILEGES ON drupal.* TO ‘drupal’ IDENTIFIED BY ‘*****’;exit
sudo nano /etc/hosts
127.0.0.1 имя_сайта.ru www.имя_сайта.ru
Создаем виртуальный хост:
sudo a2ensite drupal
Где drupal — имя конфигурационного файла
Перезапустите веб-сервер Apache:
sudo service apache2 restart
sudo chown -R www-data.www-data /var/www/имя_сайта.ru/