Выход версии OpenServer 6.0 принес рад изменений в плане настройки этого сервера для программиста под решение его задач. Для опытных пользователей это дает возможность задания ряда параметров под использование различных фреймворков, для новичков, напротив, процесс усложнился, т.к. "из-под коробки" ничего не работает.
Установка OpenServer 6.0
Тут все просто - скачиваете файл установки с официального сайта, запускаете его, указываете, куда нужно распаковать файлы и после установки всех необходимых составляющих запускаете сервер с помощью ярлыка на рабочем столе или создав его же в папке OSPanel с адресом D:\OSPanel\bin\ospanel.exe (вместо буквы диска D может быть C, F, H и т.д. в зависимости от того, сколько у вас дисков в системе, и куда вы установили OpenServer).
Важно при первой установке согласится с установкой корневого сертификата (если вы планируете использовать ssl для своих локальных сайтов), а также с запуском инструмента подготовки системы. Если вы по каким-либо причинам этого не сделали, то это можно сделать парой команд в консоли. Выберите в меню программы пункт "Интерфейс командной строки" для открытия консоли и выполните последовательно команды:
|
1 2 |
osp cacert init osp sysprep |
Первая сгенерирует SSL-сертификат, а вторая выполнит подготовку вашей системы. Что именно делает утилита подготовки, вы можете узнать, изучив репозиторий OSPanel.
Инструкцию по работе с OSPanel 6.0 вы найдете на Github в английской и русской версиях. Описание начала работы с сайтами здесь и с установкой MySQL и настройкой phpMyAdmin можно почитать здесь.
В этой статье мы будем говорить только об использовании OpenServer 6.0 для WordPress.
Запуск OpenServer 6
Запуск OpenServer 6 приведет к появлению иконки в трее с тремя сайтами:
- example.local
- full-example.local
- forum.full-example.local
И вот тут при попытке запустить любой из них в браузере с помощью панели в трее OpenServer Panel, вы столкнетесь с тем, что в браузере просмотреть сайт не получится.
Запуск модулей
Вам понадобится командная строка или меню Модули в панели сервера, чтобы запустить 2 процесса - PHP и MySQL, которые нужны для установки WordPress.
Для начала вам надо определиться с версией PHP и версией MySQL, которые вы можете выбрать. Для этого можно почитать рекомендации wordpress.org для установки WordPress или посмотреть, что вам доступно в панели управления хостингом от вашего хостинг-провайдера.
Здесь мы остановимся на PHP 8.1 и MySQL 8.0. Для запуска их через панель перейдите в меню Модули, затем PHP (MySQL) → нужная версия → Включить. На скриншоте ниже видно, как это выглядит для MySQL.
Для работы с командной строкой вы можете нажать сочетание клавиш Windows + R, затем написать cmd (или cmd.exe) и нажать Enter. Затем вы печатаете или копируете и последовательно вставляете 2 команды.
|
1 2 3 4 |
//для PHP osp on php-8.1 //для MySQL osp on mysql-8.0 |
После этого вы должны увидеть сообщение типа "PHP-8.1 (default): Рабочий процесс модуля запущен".
Также вы можете писать команды через интерфейс командной строки, доступной в меню OSPanel.
Создание папки для сайта на WordPress
Теперь запуск сайта example.local приведет к тому, что он появится у вас в браузере по адресу https://example.local. С точки зрения того, где вы можете найти этот сайт в виде папки, у вас тоже есть подсказка - это пункт меню OSPanel "Открыть в проводнике". Нужный сайт вы найдете в папке home, где размещены все сайты, в соответствующей подпапке (example.local в нашем случае).
Также в папке с этим сайтом вы найдете папку .osp с единственным файлом project.ini и текстом:
|
1 2 3 |
[example.local] php_engine = PHP-8.1 |
Можете скопировать эту папку, затем создать новую папку внутри home с именем my-wp.local и разместить скопированную папку .osp внутри.
Откройте в VSCode или другом редакторе кода файл project.ini и отредактируйте его, внеся такие строки:
|
1 2 3 4 5 |
[my-wp.local] php_engine = PHP-8.1 HOST = MySQL-8.0 public_dir = {base_dir}\public_html |
В этом коде мы описали версию PHP, название сервера MySQL и корневую папку для нашего сайта на WordPress. Теперь вам нужно будет скачать и разархивировать zip-архив с файлами WordPress в папку my-wp.local. Обычно нужный вам архив находится в папке wordpress. Ее надо переименовать в public_html - это одно из стандартных названий папок с файлами на реальных хостингах. И важно, что именно его мы указали в последней строке project.ini.
Учтите, что после внесения изменений OpenServer нужно перезапускать. Это вторая снизу строка меню OSPanel в трее.
Теперь запуск вашего сайта из трея приведет к тому, что у вас появится сначала список выбора языков, а затем страница для ввода данных для установки WordPress.
И вот тут-то нам понадобится база данных, которую проще всего создать в phpMyAdmin. И второй сюрприз от OpenServer 6.0 - phpMyAdmin в нем по умолчанию отсутствует. Упс.
Добавление phpMyAdmin
Для установки phpMyAdmin необходимо повторить создание папок, как для нового сайта. То есть создаем папку phpmyadmin, в ней вложенную папку .osp с файлом project.ini и текстом в нем:
|
1 2 3 |
[phpmyadmin] php_engine = PHP-8.1 public_dir = {base_dir}/public |
Поскольку последняя строка - это путь к папке с файлами phpMyAdmin, то еще нам понадобится папка public. Создаем ее в каталоге phpmyadmin и распаковываем в нее предварительно скачанный архив с ресурса https://www.phpmyadmin.net/downloads/.
На момент написания статьи последняя версия 5.2.1. Минимальные требования следующие: Current version compatible with PHP 7.2 and newer and MySQL/MariaDB 5.5 and newer.
Создание конфигурационного файла для phpMyAdmin
config.sample.inc.phpи переименуйте его в config.inc.php.Тут будут храниться настройки конфигурации для phpMyAdmin.

Теперь вам нужно будет отредактировать этот файл.
Для начала введите случайную 32-байтную символьную строку в качестве секрета шифрования.
|
1 |
$cfg['blowfish_secret'] = '4540DF61B592E3F8CEBE4BAE84F9D7FD'; |
А затем добавьте настройки конфигурации для одного сервера. Их можно раскомментировать и изменить в config.inc.php, т.к. он находится в архиве уже с подсказками:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
/** * Servers configuration */ $i = 0; /** * First server */ $i++; /* Authentication type */ $cfg['Servers'][$i]['auth_type'] = 'config'; /* Server parameters */ $cfg['Servers'][$i]['host'] = 'MySQL-8.0'; $cfg['Servers'][$i]['compress'] = false; $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = ''; $cfg['Servers'][$i]['AllowNoPassword'] = true; |
Обратите внимание на выделенную строку. Именно в ней находится название хоста MySQL, которое мы указываем в настройках при установке WordPress (см. скриншот).
Кроме того, в настройках конфигурации мы указали, что мы будем авторизоваться при входе в phpMyAdmin через конфиг, поэтому внизу у нас есть строки с пользователем и паролем. А поскольку для OSPanel характерен пользователь root без пароля, то в настройках еще разрешен пустой пароль.
localhost в качестве имени хоста в OSPanel v6.Также вы можете раскомментировать строки с другими настройками:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin'; $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark'; $cfg['Servers'][$i]['relation'] = 'pma__relation'; $cfg['Servers'][$i]['table_info'] = 'pma__table_info'; $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords'; $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages'; $cfg['Servers'][$i]['column_info'] = 'pma__column_info'; $cfg['Servers'][$i]['history'] = 'pma__history'; $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs'; $cfg['Servers'][$i]['tracking'] = 'pma__tracking'; $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig'; $cfg['Servers'][$i]['recent'] = 'pma__recent'; $cfg['Servers'][$i]['favorite'] = 'pma__favorite'; $cfg['Servers'][$i]['users'] = 'pma__users'; $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups'; $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding'; $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches'; $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns'; $cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings'; $cfg['Servers'][$i]['export_templates'] = 'pma__export_templates'; |
Для того, чтобы посмотреть на создание конфига phpMyAdmin для нескольких хостов, вы можете открыть файл config.manyhosts.inc.php из папки examples в каталоге phpmyadmin/public. В этом случае у вас обязательно должна быть строка, где переменная $i, указывающая на хост, увеличивается: $i++;
Теперь переход по адресу http://phpmyadmin откроет вам привычный интерфейс phpMyAdmin, в котором нужно создать новую базу данных. Мы назовем ее my-wp, т.к. именно ее указали в настройках при установке WordPress ранее.
Установка кодировки базы данных
Как правило, для всех сайтов на WordPress используют универсальную кодировку utf8mb4_unicode_ci. Однако вы можете увидеть в списке при создании БД другую кодировку. Чтобы это исправить, перейдите в phpMyAdmin в меню Переменные (Variables) и измените переменную collation_server.
Теперь вам нужно закончить установку WordPress по той схеме, что показана в статье Установка WordPress на локальный сервер (на примере OpenServer), перейдя к шагу "Настройки сайта при установке WordPress". Ну, а потом уже вы будете наполнять свой сайт статьями, изображениями, менять тему и устанавливать плагины.
Почта в OpenServer 6.0
Когда вы отправляете письма из-под вашего локального WordPress-сайта на основе OpenServer 6.0, письма обычно не уходят адресату, а сохраняются в папке D:\OSPanel\logs\mail. Буква диска, на котором вы установили OpenServer 6.0 может быть другой, но папка будет иметь название mail и находится в каталоге logs в той папке, что вы определили под OpenServer как основную.
Сами письма вы увидите в расширении .eml, хотя сможете открыть это письмо с помощью любого текстового редактора - хоть в Visual Studio Code, хоть в обычном Notepad.
Что касается отправки писем, то обычно она выполняется с помощью WordPress-функции wp_mail(). И вот тут могут быть проблемы, т.к. по умолчанию у вас не указан отправитель писем в настройках php.ini.
Дело в том, что править php.ini нужно не в каталоге moduls, т.к. при перезапуске сервера у вас все настройки сбросятся до первоначальных, a в папке D:\OSPanel\config\PHP-8.0\default\templates\php.ini. Изменить нужно следующее: sendmail_from = noreply@local.test
Вы указываете таким образом, от кого по умолчанию уходит почта для вашего сервера и можете проверить, будет ли отослано письмо, создав сначала файл в корне вашего сайта, например https://my-wp.local/mail-test.php с таким кодом:
|
1 2 3 4 5 6 7 |
<?php mail( 'test@example.com', 'OSPanel test', 'Hello from OpenServer' ); |
Здесь вы проверите работу обычной php-функции mail().
Для того чтобы проверить работу функции wp_mail(), вставьте код ниже в functions.php вашей темы и откройте страницу вашего сайта по адресу https://my-wp.local/?mailtest=1:
|
1 2 3 4 5 6 7 8 9 10 |
add_action('init', function () { if (isset($_GET['mailtest'])) { var_dump(wp_mail( get_option('admin_email'), 'WP Mail Test', 'Hello from WordPress wp_mail()' )); exit; } }); |
Вы должны увидеть на пустой странице bool(true), если все в порядке. Затем вам нужно проверить папку D:\OSPanel\logs\mail на предмет наличия там нового письма в формате .eml.
Если же вы видите bool(false), то проблема, скорей всего заключается в том, что у вас стоит плагин, отправляющий письма через SMTP (чаще всего это WP Mail SMTP), поэтому обычная отправка через wp_mail() на локальном сервере не работает. Отключите плагин и проверьте еще раз. Если же не получается - ищите способы настройки SMTP для WordPress. Информацию о настройке SMTP-сервера для отправки почты можно найти в отдельной статье.
Кстати, можно также проверить, а сбивает ли вам отправку почты настройка на SMTP-сервер. Разместите код ниже в файле functions.php:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
add_action('init', function () { if (!isset($_GET['phptest'])) { return; } global $phpmailer; if (!($phpmailer instanceof PHPMailer\PHPMailer\PHPMailer)) { require_once ABSPATH . WPINC . '/PHPMailer/PHPMailer.php'; require_once ABSPATH . WPINC . '/PHPMailer/SMTP.php'; require_once ABSPATH . WPINC . '/PHPMailer/Exception.php'; $phpmailer = new PHPMailer\PHPMailer\PHPMailer(true); } $phpmailer->isMail(); $phpmailer->setFrom('noreply@local.test', 'Test'); $phpmailer->addAddress('test@test.local'); $phpmailer->Subject = 'PHPMailer raw test'; $phpmailer->Body = 'new Test PHP Mailer'; try { var_dump($phpmailer->send()); } catch (Exception $e) { echo $e->getMessage(); } exit; }); |
Откройте в браузере страницу https://my-wp.local/?phptest=1 (вместо my-wp.local - доменное имя вашего сайта на OpenServer).
Результаты:
bool(true)- PHPMailer исправен, WP ломаетwp_mail()bool(false)или exception - PHPMailer не может отправить mail()
Если у вас bool(true), то почти наверняка проблема в использовании SMTP-плагина.




