Установка и настройка Bedrock в среде ServBay
Обзор
Данный документ проведет вас через процесс установки и настройки Bedrock в локальной среде разработки ServBay. Bedrock предлагает современную структуру WordPress-проектов, используя Composer для управления зависимостями, упрощая управление конфигурациями и следуя лучшим практикам для повышения эффективности, безопасности и удобства разработки, деплоя и поддержки WordPress-проектов. В сочетании с мощными и удобными возможностями управления локальной средой от ServBay вы сможете быстро развернуть рабочее пространство для Bedrock.
Что такое Bedrock?
Bedrock — это структура для проектов WordPress, созданная командой Roots с целью улучшить опыт разработки под WordPress. Она заметно отличается от традиционного подхода и обладает следующими ключевыми особенностями:
- Управление зависимостями через Composer: Ядро WordPress, темы и плагины можно устанавливать и обновлять через Composer, что упрощает обновления и исключает конфликты зависимостей.
- Улучшенное управление конфигурациями: Использование принципов Twelve-Factor App и файла
.env
для хранения переменных окружения; настройки отделены от кода, что безопаснее и гибче. - Более удобная структура проекта: Ядро WordPress размещается в отдельной подпапке (
web/wp
), а темы и плагины — вweb/app
, что обеспечивает более чистую организацию проекта. - Повышенная безопасность: По умолчанию реализованы меры для усиления безопасности, такие как скрытие путей к системным файлам.
Bedrock — идеальный выбор для создания современных, масштабируемых и поддерживаемых WordPress-приложений.
Почему разработку Bedrock стоит вести в ServBay?
ServBay — это локальная среда для веб-разработки, разработанная для macOS. Она включает популярные веб-серверы (Caddy/Nginx/Apache), различные версии PHP, базы данных (MySQL/PostgreSQL/MongoDB), а также среды Node.js, Python, Go, Java и другие. Используя связку ServBay и Bedrock, вы получаете:
- Быстрое развертывание среды: ServBay предустановлен с PHP, Composer и базами данных, необходимыми для Bedrock — ничего не нужно доустанавливать вручную.
- Гибкое переключение версий: Можно легко менять версию PHP и тестировать совместимость проекта с разными релизами.
- Интегрированное управление базами данных: Удобно создавать и администрировать базы данных через встроенный phpMyAdmin или Adminer, необходимые для Bedrock.
- Простая настройка сайтов: С помощью графического интерфейса ServBay можно быстро создать сайт (виртуальный хост) для проекта Bedrock с указанием правильной корневой директории.
- Единое управление: Управляйте всеми компонентами для локальной разработки и сайтами в одном приложении.
Предварительные требования
Перед началом установки убедитесь, что выполнены следующие условия:
- На вашем Mac установлен и запущен ServBay.
- Вы имеете базовые навыки использования командной строки.
- Вы знакомы с Composer (тем не менее, все команды приведены в документе).
Шаги по установке Bedrock
В этом разделе подробно описана установка и настройка Bedrock в среде ServBay.
Шаг 1: Создание директории проекта
Сначала перейдите в стандартную корневую папку сайтов ServBay — /Applications/ServBay/www
— и создайте в ней новую директорию для проекта. Рекомендуем дать ей осмысленное название, например, servbay-bedrock-app
.
bash
cd /Applications/ServBay/www
mkdir servbay-bedrock-app
cd servbay-bedrock-app
1
2
3
2
3
Эта папка будет корневой директорией вашего Bedrock-проекта.
Шаг 2: Создание Bedrock-проекта через Composer
В ServBay уже предустановлен Composer, поэтому вы можете использовать команду composer
прямо в терминале. Находясь в только что созданной папке (/Applications/ServBay/www/servbay-bedrock-app
), выполните следующую команду:
bash
composer create-project roots/bedrock .
1
Эта команда загрузит свежую версию Bedrock и все необходимые зависимости в текущую директорию (.
). Продолжительность процесса зависит от скорости вашего интернета.
Шаг 3: Создание базы данных и пользователя
Для хранения контента и настроек Bedrock/WordPress потребуется база данных. Используем phpMyAdmin, который встроен в ServBay, для создания базы и соответствующего пользователя.
Откройте phpMyAdmin, интегрированный в ServBay
Запустите браузер и перейдите по адресу https://servbay.host/. На приветственной странице найдите и нажмите ссылку «phpMyAdmin» для перехода к инструменту управления базами данных.
Создайте пользователя для базы данных
Для удобства и безопасности рекомендуется создать отдельного пользователя и базу данных для каждого проекта.
Откройте страницу управления пользователями
На главной странице phpMyAdmin выберите в верхнем меню пункт «Пользовательские аккаунты».
Добавьте нового пользователя
Нажмите «Добавить аккаунт пользователя» и заполните поля:
- Имя пользователя: Введите, например,
bedrock_user
. - Имя хоста: Выберите
localhost
, чтобы пользователь мог подключаться только с локальной машины. - Пароль: Введите безопасный пароль и запомните его. Для тестирования на локальном компьютере можно использовать
password123
, но для продакшн-среды обязательно придумайте сложный пароль. - Подтвердите пароль: Повторно введите пароль.
В разделе «Создать базу данных для пользователя» выберите опцию «Создать базу данных с именем пользователя и предоставить все привилегии». Это автоматически создаст базу данных и предоставит пользователю полный доступ к ней.
Проверьте, что активирован чекбокс «Предоставить все привилегии», чтобы обеспечить нужный уровень доступа пользователю.
Нажмите кнопку «Вполнить» внизу страницы для завершения создания пользователя и базы данных.
- Имя пользователя: Введите, например,
Шаг 4: Настройка Bedrock
Bedrock использует переменные окружения, размещенные в файле .env
, для управления параметрами проекта.
Отредактируйте файл конфигурации окружения
В корневой папке вашего Bedrock-проекта (
/Applications/ServBay/www/servbay-bedrock-app
) найдите пример файла.env.example
и скопируйте его под именем.env
:bashcp .env.example .env
1Файл
.env
используется для реальных настроек проекта;.env.example
служит лишь шаблоном и не содержит чувствительных данных.Отредактируйте
.env
Откройте файл
.env
в любимом редакторе (например, VS Code, Sublime Text, Nano и др.). Найдите раздел с настройками подключения к базе данных и замените параметры на соответствующие вашему проекту:dotenv# Database DB_NAME='bedrock_user' # Имя базы данных — совпадает с именем пользователя DB_USER='bedrock_user' # Имя пользователя базы DB_PASSWORD='password123' # Пароль пользователя базы DB_HOST='localhost' # Хост баз данных (обычно localhost) DB_PREFIX='wp_' # Префикс таблиц (можно оставить по умолчанию или изменить) # WordPress Environment WP_ENV='development' # Текущее окружение: development, staging, production и др. # Site URLs WP_HOME='http://servbay-bedrock.local' # Полный URL сайта WP_SITEURL='${WP_HOME}/wp' # URL к ядру WordPress
1
2
3
4
5
6
7
8
9
10
11
12
13Обязательно измените
DB_PASSWORD
на фактически установленный, если вы выбрали другой. Остальные параметры при необходимости также адаптируйте под ваш проект.WP_HOME
иWP_SITEURL
определяют адрес, по которому вы будете заходить на сайт. Например,servbay-bedrock.local
— частое имя для локальных разработок, но вы можете использовать свое.WP_SITEURL
указывает на подпапку с ядром (web/wp
).Файл
.env
также можно дополнительно настроить для других опций Bedrock и WordPress, например, задать константы или параметры отправки почты.
Шаг 5: Настройка веб-сервера (сайта ServBay)
Чтобы веб-сервер ServBay корректно обслуживал Bedrock-проект, нужно добавить в ServBay новый сайт (виртуальный хост).
Добавьте новый сайт
Откройте приложение ServBay и выберите вкладку «Сайты» в левой панели. Нажмите «+» или кнопку «Добавить сайт», затем заполните форму:
- Имя: Например,
My Bedrock Site
— это внутреннее название для удобства. - Домен: Укажите домен из параметра
WP_HOME
в.env
, например,servbay-bedrock.local
. ServBay автоматически пропишет соответствие с127.0.0.1
. - Тип сайта: Выберите
PHP
. - Версия PHP: Подберите совместимую с Bedrock версию PHP (желательно последнюю стабильную из предложенных ServBay).
- Корневая папка сайта: Это особо важно! Корневой директории сайта в Bedrock является подпапка
web
, поэтому укажите/Applications/ServBay/www/servbay-bedrock-app/web
.
- Имя: Например,
Сохраните настройки
Заполнив все поля, сохраните конфигурацию. ServBay сам обновит настройки веб-сервера. Если потребуется перезапуск сервисов, следуйте подсказке приложения.
Шаг 6: Завершение установки WordPress
Bedrock уже готов, и сайт на стороне ServBay сконфигурирован. Следующий шаг — завершить установку WordPress через веб-интерфейс.
Откройте страницу установки
В браузере перейдите по адресу, который вы указали в
.env
и настройках сайта ServBay в параметреWP_SITEURL
, например,http://servbay-bedrock.local/wp
. При корректных настройках вы увидите стартовый мастер установки WordPress.Заполните данные БД
Установщик WordPress запросит параметры базы данных. Введите:
- Имя базы данных:
bedrock_user
(или свое) - Имя пользователя:
bedrock_user
- Пароль: тот самый, что вы вводили (например,
password123
) - Хост базы данных:
localhost
- Префикс таблиц:
wp_
(по умолчанию или другой, если вы поменяли)
Нажмите «Отправить» — WordPress проверит соединение с базой данных.
- Имя базы данных:
Задайте основные параметры сайта
При успешном подключении откроется форма создания сайта. Введите:
- Название сайта: Имя вашего проекта.
- Имя пользователя: Логин администратора.
- Пароль: Надежный пароль администратора.
- E-mail: Электронная почта администратора.
- Видимость для поисковых систем: Для локальной разработки рекомендуется включить опцию «Блокировать индексацию сайта поисковиками».
Завершите установку
Нажмите «Установить WordPress», после чего система создаст нужные таблицы и выведет сообщение об успехе. Сразу после этого можно входить в административную панель WordPress.
Шаг 7: Установка тем и плагинов через Composer
Bedrock рекомендует управлять темами и плагинами через Composer, а не стандартный интерфейс WordPress.
Найдите название пакета темы/плагина для Composer
Многие популярные темы и плагины опубликованы в Packagist (packagist.org) или WordPress Packagist (wpackagist.org). Их имена обычно в формате
vendor/package-name
, например:wpackagist-theme/twentytwentyone
илиwpackagist-plugin/wordpress-seo
.Установите через Composer
Перейдите в корневую директорию Bedrock (
/Applications/ServBay/www/servbay-bedrock-app
) и используйте команду:Установка темы:
bashcomposer require wpackagist-theme/your-theme-name
1Установка плагина:
bashcomposer require wpackagist-plugin/your-plugin-name
1Замените
your-theme-name
иyour-plugin-name
на нужные значения. Темы будут установлены вweb/app/themes
, а плагины — вweb/app/plugins
.Включите в админке WordPress
Войдите в админку WordPress по адресу
http://servbay-bedrock.local/wp/wp-admin/
:- Темы: раздел «Внешний вид» → «Темы», выберите и активируйте нужную.
- Плагины: раздел «Плагины» → «Установленные плагины», активируйте необходимое.
Bedrock поддерживает и установку через загрузку
.zip
-архивов в интерфейсе WordPress, однако использование Composer более современно и рекомендуется в рамках Bedrock.
Создание сайта на Bedrock
Ваша среда разработки с Bedrock и ServBay успешно настроена. Теперь вы можете создавать сайты на WordPress, используя преимущества Bedrock:
- Создавайте страницы и записи: Авторизуйтесь в админке WordPress — разделы «Страницы» и «Записи» работают как обычно.
- Настройте меню: В разделе «Внешний вид» → «Меню» настройте навигацию.
- Управляйте виджетами: «Внешний вид» → «Виджеты» — настройте боковые панели и другие области.
- Разрабатывайте собственные темы и плагины: В директориях
web/app/themes
иweb/app/plugins
можно вести собственную разработку. - Управление конфигурациями: Используйте
.env
для разделения настроек различных окружений (разработка, предпрод, прод).
Часто задаваемые вопросы (FAQ)
- В: При обращении к
http://servbay-bedrock.local
получаю ошибку 404. Что делать?- О: Проверьте, что домен сайта в настройках ServBay совпадает с тем, который вы используете для входа.
- О: Убедитесь, что корневая директория сайта в ServBay указывает на
/Applications/ServBay/www/servbay-bedrock-app/web
. - О: Проверьте, что веб-сервер ServBay запущен.
- О: Посмотрите, правильно ли установлен параметр
WP_HOME
в вашем.env
.
- В: При переходе на
http://servbay-bedrock.local/wp
возникает ошибка подключения к базе данных.- О: Проверьте, что значения
DB_NAME
,DB_USER
,DB_PASSWORD
,DB_HOST
в файле.env
совпадают с созданными через phpMyAdmin. - О: Удостоверьтесь, что MySQL или выбранная база в ServBay запущена.
- О: Проверьте, что выдались все права пользователю на выбранную базу через phpMyAdmin.
- О: Проверьте, что значения
- В: Почему тема или плагин, установленный через Composer, не появляется в админке WordPress?
- О: После установки через Composer убедитесь, что команда выполнялась в папке проекта, и ошибок не возникло.
- О: Проверьте, что файлы темы/плагина действительно появились в
web/app/themes
илиweb/app/plugins
. - О: Попробуйте вручную обновить страницу с темами или плагинами в админке и включить нужное расширение.
- В: Как обновить Bedrock, ядро WordPress, темы или плагины?
- О: Поскольку Bedrock управляет зависимостями через Composer, для обновления выполните в корневой папке проекта команду
composer update
для обновления всего илиcomposer update vendor/package-name
— для обновления отдельного пакета. После обновления может потребоваться провести миграцию или обновление базы через админку WordPress (если потребуется).
- О: Поскольку Bedrock управляет зависимостями через Composer, для обновления выполните в корневой папке проекта команду
Итоги
Выполнив эти шаги, вы развернули Bedrock-проект в локальной среде ServBay. Используйте удобное управление окружением от ServBay и продвинутую структуру Bedrock для эффективной и безопасной разработки и поддержки проектов на WordPress. Оцените все преимущества современной разработки — начинайте создавать свой следующий WordPress-сайт на Bedrock!