• Инструменты
  • Настройка Open Server Panel v.6

    Настройка Open Server Panel v.6

    После выхода 6-ой Open Server Panel версии я сразу же её установил, попробовал настроить, плюнул и остался на 5-ой.... А время шло, всё чаще стали встречаться проекты на PHP версии больше 8.2. С костылями установил модуль PHP 8.3 на 5-ую версию OSP, вроде бы даже и работало пока не поднял большой проект, а он стал грузить Apache на компе в 100% минут через 10 после запуска. И тут я понял, что пришло время разобраться с 6-ой версией OSP. Оказалось, что это не так сложно. А работать с ней в разы удобней, быстрей и приятней.

    #Установить нельзя остаться

    Почему оставаться на 5-й версии вредно и небезопасно:

    • Нельзя одновременно использовать разные версии PHP для своих проектов
    • Нет возможности настроить среду окружения модулей и поэтому нет нормальной работы с модулями в консоли
    • Невозможно добавление новых нетипичных модулей (команды запуска вшиты в исходный код программы!)
    • Модули могут не запускаться из-за некорректной кодировки конфигов при определённых настройках в Windows
    • Есть вероятность повреждения баз данных при завершении работы Windows
    • Отсутствие стабильности в работе модулей из-за устаревшего способа их запуска в системе
    • Скудный набор расширений PHP модулей и плохо протестированная конфигурация Apache и PHP
    • Отсутствуют важные проверки файловой системы и системных настроек
    • Бывают сбои при длительной работе планировщика заданий
    • Есть нерешаемые проблемы совместимости с новыми версиями Windows
    • Множество других причин, свойственных устаревшему программному обеспечению...

    Почему работать на 6-й версии удобно и просто:

    • Полная кастомизация: Пользователи получают полный доступ к настройкам всех модулей.
    • Гибкое управление: Управление осуществляется через консоль, трей-меню или веб-интерфейс (в разработке).
    • Надежный контроль процессов: Мониторинг и автоматическое восстановление после сбоев.
    • Параллельная работа модулей: Возможность одновременного запуска всех модулей, включая запуск нескольких версий одного и того же модуля (например, MySQL 5.5 и MySQL 8.0).
    • Профили настроек: Создание профилей с индивидуальными настройками модулей, включая конфиги и данные.
    • Персонализация доменов: Индивидуальная настройка для каждого домена, от IP-адреса до версии PHP.
    • Встроенная поддержка SSL и IPv6: Работает "из коробки" и не требует дополнительной настройки.
    • Оптимизированная среда: Преднастроенная среда для каждого модуля, включая быстрый доступ к shell/cli.
    • Удобная смена среды: Мгновенное переключение между средами в консоли.
    • Богатый набор расширений PHP: Более 115 доступных расширений.
    • Встроенный функционал: Планировщик заданий и SMTP-сервер.
    • Composer и Node.js: Управление версиями Node.js с помощью NVM. Composer доступен во всех модулях PHP.
    • Повышенная стабильность: Отсутствие багов, зависаний и проблем с кодировками.
    • Доступность: Все настройки, шаблоны, языковые файлы и документация доступны на GitHub.

    #Установка

    Начинается процесс со скачивания дистрибутива https://ospanel.io/download/ который всегда был и остаётся бесплатным. Но как отблагодарить и сэкономить время на скачивания можно понять сразу на странице :) Версии Windows 10 x64 v1607 и выше будут работать со всеми модулями OSP, вниз до Windows 7 x64 не со всеми модулями.

    Процесс установки довольно долгий, в обязательном порядке устанавливается MSVC++ 2005-2022. Я установил в папку F:\OSPanel6. Выкинул ярлыки для удобства на Рабочий Стол. Ярлыки запуска Open Server Panel v.6 С запуском появляется иконка с меню в трее: Меню Open Server Panel v.6

    На диске оставил папку со старой версией 5.4.3, которую я домучивал последней. И даже осталась 5.3.7 про которую я уже и забыл (нужна была для php-модуль phalcon).

    Вобщем, если есть предыдущая версия OSP, не удаляйте - там базы данных, которые переносить в новую версию можно только вручную, переключаясь между разными OSP. Плюс у меня в старой OSP остались некоторые настройки модулей, которые возможно могут понадобится в новой версии, там их можно подсмотреть в файлах конфигураций.

    #Настройка

    В начале запускаем модули, которые нужны для разработки. Это делается мышкой прямо в меню. Модули->MySQL->MySQL-8.0->Включить.

    К примеру, запустил три версии PHP: Меню Open Server Panel v.6

    По-умолчанию папка где будут хранится проекты /home в папке установки OSP. Я добавил ещё свою папку, где ютяться все старые проекты. Настройки->Каталоги для поиска проектов (через ";"): папка хранения проектов

    Каждый локальный сайт нужно настроить индивидуально. Создаю папку проекта или открываю уже нужную. В ней нужно создать папку .osp и внутри неё текстовый файл project.ini Минимальное содержимое файла - это локальный домен сайта проекта и требование версии модуля PHP:

    [example.local]
    
    php_engine        = PHP-8.2
    

    Я устанавливал OSP в F:\OSPanel6, значит в F:\OSPanel6\home\example.local уже есть такой файл для примера. Если модуль PHP 8.2 уже запущен, вбиваем в браузере http://example.local и сайт уже готов к работе! http://example.local

    Для Laravel проектов нужно настроить корневую папку сайта на /public это делается также в project.ini:

    [example.local]
    
    php_engine        = PHP-8.2
    public_dir        = {base_dir}\public
    

    #Настройки MySQL

    Почему-то нигде не бросились мне в глаза настройки сервера MySQL, и я по старинке прописывал адрес localhost как адрес MySQL-сервера, и даже его настраивать пытался. Оказывается сервер MySQL в 6-ой версии OSP отзывается по имени модуля, то есть для MySQL v.8 это будет выглядеть так:

    DB_CONNECTION=mysql=mysql
    DB_HOST=MySQL-8.0=MySQL-8.0
    DB_PORT=3306=3306
    

    Я пользуюсь для работы с MySQL утилитой HeidiSQL, поэтому переносил из старой версии OSP в новую через экспорт/импорт в SQL. Можно было бы делать это и просто в консоли с помощью mysqldump. Ещё ощутимое удобство, что все сервера теперь работают одновременно и в той же HeidiSQL переключатся между разными базами разных проектов можно одним щелчком мышки. HeidiSQL

    #Настройки PHP

    Шаблоны настроек PHP

    Настройки для каждого модуля PHP надо искать в соответствующей папке config\PHP-8.3\default\templates\php.ini. Сразу сделал две копии стандартной настройки default, скопировал эту папку в папки dev и prod. Для dev включаю xdebug в php.ini

    zend_extension                 = xdebug
    [xdebug]
    xdebug.mode                    = debug
    xdebug.client_host             = 127.0.0.1
    xdebug.client_port             = 9003
    xdebug.connect_timeout_ms      = 200
    xdebug.discover_client_host    = On
    xdebug.log                      = "{root_dir}/logs/{module_name}/xdebug.log"
    xdebug.output_dir               = "{root_dir}/temp/{module_name}/{profile_name}/xdebug"
    xdebug.start_with_request      = yes
    xdebug.idekey                   = PHPSTORM
    

    Там же включаем нужные проектам php-модули. В теории можно наделать под каждый проект свою конфигурацию php, пока не заморочился настолько.

    #Настройка PhpStorm

    В отдельной статье: настройка PHPStorm

    #Дзен

    Не забыть перезапустить после манипуляций Open Server Panel через Меню->Перезапустить. Проекты запускаются сразу и по http// и по https://. Всё летает по сравнению с OSP версии 5.

    #Дополнения

    от 09-06-2025

    Обязательно добавить все папки по которым OSP ищет рабочие проекты в исключения для антивируса. Особенно чувствительно замедление работы при запуске composer с большим количеством зависимостей. Генерация autoload может подвиснуть на несколько минут если этого не сделать.

    profile image of Wagood

    Wagood

    Wagood - это Гаврилов Алексей Александрович, веб-разработчик и программист. Имеет достаточно большой опыт в web-разработке, специализируется на backed-разработке средствами языка PHP.

    ещё от Wagood