Лабораторная работа №11. Развертывание CMS Wordpress на базе nginx.
Тема: Развертывание CMS Wordpress на базе nginx.
Цель работы: Научиться настраивать php для web сервер Nginx на OC Linux. Развернуть CMS Wordpress на базе стека LEMP.
Необходимые материалы: Пк с доступом в интернет. Виртуальные машины с Linux Debian и Ubuntu.
Теоретическая часть
Система управления контентом (Content management system) — информационная система или компьютерная программа, используемая для обеспечения и организации совместного процесса создания, редактирования и управления контентом.
CMS обычно состоит из двух основных компонентов:
- Приложение для управления контентом (CMA) в качестве внешнего пользовательского интерфейса, позволяющего пользователю добавлять, изменять и удалять контент с веб-сайта без вмешательства веб-мастера.
- Приложение доставки контента (CDA), которое компилирует контент и обновляет веб-сайт.
Основные функции CMS:
- Предоставление инструментов для создания содержимого, организация совместной работы над содержимым
- Управление содержимым: хранение, контроль версий, соблюдение режима доступа, управление потоком документов
- Публикация содержимого
- Представление информации в виде, удобном для навигации, поиска
Преимущество CMS
Использование систем управления сайтом CMS (Content Management System) позволяет сделать изготовление сайтов максимально простым, сведя его к разработке веб-дизайна и настройке системы управления веб-контентом. Такой подход обеспечивает надежную и стабильную работу ресурса, поскольку самые популярные CMS тестировались на протяжении нескольких лет, а также в них были исправлены все ошибки. Кроме того, за изготовление сайтов на базе уже имеющихся движков говорит и то, что системы обеспечивают удобство в последующей работе с сайтом.
Принцип работы с большинством CMS одинаков: изготовление сайтов производится путем расстановки информационных блоков, потом - прорисовка веб-дизайна и настройка интерфейса. Все популярные системы управления контентом имеют разграничение доступа к сайту, поэтому использовать их удобно и в том случае, когда необходимо предоставить различным пользователям разные возможности.
WordPress
WordPress – это одна из наиболее популярных CMS в мире. С ее помощью можно создавать сайты различного характера и управлять ими без знаний и навыков программирования. Сегодня в сети существует множество различных программ или систем управления, но WordPress является самой популярной. Более 30 % всех сайтов в интернете работают на данной платформе. А если говорить исключительно о площадках, работающих на CMS, то на WP приходится более 60 %, что делает ее однозначным лидером рынка.
Функционал WordPress:
- Позволяет создавать, удалять и редактировать статические страницы (например, «О компании», «Контакты», «Товар X» и т. д.).
- Позволяет создавать, удалять и редактировать записи (публикации).
- Широкие возможности по работе с комментариями (включить, отключить, древовидный формат, максимальное число на одной странице и т. д.).
- Поддержка ЧПУ (человеко-понятный URL), написание собственных URL, большой выбор форматов.
- Поддержка меток, рубрик, RSS, поиска.
- Отличный текстовый редактор WYSIWYG (What You See Is What You Get – что ты видишь, то и получишь), работающий в двух режимах: визуальный и html.
- Онлайн редактор фотографий и изображений, позволяющий обрезать, поворачивать, масштабировать и т. д.
- Большой выбор готовых шаблонов, что значительно упрощает процесс создания сайта.
- Большой набор различных плагинов и виджетов, позволяющих добавлять нестандартные функции.
Wordpress работает на базе php и использует базу данных mysql. В качестве веб сервера мы можем выбрать либо Apache либо Nginx в первом случае такой стек будет называться LAMP что в переводе Linux + Apache + Mysql + PHP. Во втором случае LEMP, где E обозначает Nginx.
Практическая часть
- Как уже было сказанно WordPress использует стек LEMP. Давайте установим его вместо mysql мы будет использовать mariadb это почти одно и тоже:
- Отредактируйте сайт по умолчанию в nginx
/etc/nginx/sites-available/default
:
важно для параметра fastcgi_pass
указать версию php-fpm ту которая у вас установлена.
- Создайте файл
/var/www/html/index.php
с следующим кодом:
- Перезагрузите nginx.
- Откройте сайт по ip_адресу сервера в браузере:

- Скачайте последнию версию WordPress в директорию /tmp:
- Разархивируйте архив.
- Скопируйте WordPress сайт в директорию для сайтов:
- Создадим базу данных для WordPress:
- Переименуйте файл конфигурации WP:
- Отредактируйте
/var/www/html/wp-config.php
, нужно изменить эти параметры под параметры созданной ранее БД:
- Сделайте владельцем директории с сайтом WordPress пользователя веб сервера nginx а также задайте права 755 для всего содержимого директории:
- Перезагрузите nginx и php-fpm. После перейдите по ip адресу сервера в браузере и завершите установку WordPress:

Укажите всю неоюходимую информацию и завершите установку.

В отчете опишите все шаги установки.
Контрольные вопросы
- Опишите из чего состоит стек LEMP?
- Что такое CMS система?
- Какой функционал дает WordPress?