-
-
Notifications
You must be signed in to change notification settings - Fork 49
Документация
Open Server Panel — это мощная альтернатива WAMP-стекам, таким как Xampp, Wampserver, Laravel Herd, EasyPHP, Vertrigo и подобным им решениям. Приложение работает на ОС Windows, поддерживает Apache и Nginx в качестве веб-сервера и предоставляет возможность запускать различные версии PHP, MySQL, PostgreSQL, MongoDB и других популярных модулей. Если у вас есть опыт работы с подобным ПО, освоение Open Server Panel не составит труда.
Для полноценной работы Open Server Panel требуется:
Компонент | Требования |
---|---|
Операционная система | Windows 10 / Windows Server 2016 или новее |
Свободные аппаратные ресурсы | Минимум 4 ГБ RAM и 15 ГБ SSD |
Обязательное ПО | MSVC++ Redistributable Packages (включено в комплект поставки) |
Файловая система | NTFS (сетевые диски не поддерживаются) |
Caution
Не поддерживаются Linux, macOS, Windows XP, Windows 7, Windows 8, 32-битные системы, процессоры без SSE4.2.
При ограниченном объеме оперативной памяти (менее 4 ГБ) может потребоваться ограничение количества одновременно запускаемых модулей. На малопроизводительных компьютерах рекомендуется запускать не более одного модуля каждого типа одновременно.
- Место установки: Для оптимальной производительности рекомендуется устанавливать Open Server Panel на SSD‑накопитель. Использование HDD допустимо, однако приводит к значительным задержкам и ограничению скорости работы модулей.
-
Неподдерживаемые конфигурации:
- USB-флеш-накопители: Не рекомендуется использовать USB-флеш-накопители для установки Open Server Panel, так как это может привести к быстрому износу устройства и значительно снизить производительность.
- Внешние носители с USB 2.0: Использование внешних носителей информации с устаревшим интерфейсом USB 2.0 не рекомендуется из-за низкой скорости передачи данных.
-
Загрузка дистрибутива:
- Скачайте дистрибутив Open Server Panel с официального сайта: https://ospanel.io/download/
-
Запуск установщика:
- Рекомендуется устанавливать Open Server Panel в корень диска (например,
C:\OSPanel
). -
Разрешенные символы в пути к каталогу установки:
A-Za-z0-9-+\_.\:
- Портативная установка: Выбирайте этот вариант, только если планируете использовать Open Server Panel на разных компьютерах и устанавливаете его на переносной носитель. В остальных случаях рекомендуется стандартная установка.
- Выберите необходимые компоненты для установки и дождитесь завершения их распаковки
- Рекомендуется устанавливать Open Server Panel в корень диска (например,
-
Запуск System Preparation Tool:
- После завершения установки запустите System Preparation Tool. Для запуска этой утилиты требуются права администратора.
- Исключения: Запуск System Preparation Tool не требуется, если вы устанавливаете только недостающие модули, а Open Server Panel той же версии уже установлен.
-
Настройка VPN/прокси:
- Исключения: Добавьте подсеть 127.0.0.0/8 в исключения вашего VPN/прокси сервиса.
- WARP 1.1.1.1: Если вы используете Cloudflare WARP, необходимо также добавить эту подсеть в исключения, поскольку WARP перенаправляет все запросы через свой прокси. Без правильной настройки исключений служебные утилиты не смогут корректно взаимодействовать с Open Server Panel, что приведет к ошибкам соединения.
- Браузеры: В используемых браузерах также требуется настроить исключение для локальной подсети в настройках прокси/VPN расширений. Если вы используете браузерные VPN или прокси, добавьте туда то же исключение.
- DNS-over-HTTPS/TLS: В современных браузерах часто включены защищенные DNS-провайдеры (DoH, DoT), такие как Cloudflare, Google или Firefox Trusted Recursive Resolver. Эти сервисы могут блокировать доступ к локальным доменам Open Server Panel. Необходимо отключить DNS-over-HTTPS/TLS в настройках браузера или добавить исключения для локальных доменов при работе с Open Server Panel.
-
Настройка файрвола/антивируса:
- Исключения: Добавьте каталог Open Server Panel в исключения вашего файрвола/антивируса.
- Защита файла HOSTS: Если ваш файрвол/антивирус защищает файл HOSTS и игнорирует программы, добавленные в исключения, отключите эту функцию.
- Отслеживание трафика: Отключите функцию отслеживания или перехвата сетевого трафика в вашем файрволе/антивирусе. Такие действия со стороны защитного ПО могут замедлить работу с локальными проектами, вызвать проблемы с SSL-сертификатами и привести к другим непредвиденным ошибкам.
Если программа не добавлена в список доверенных приложений антивируса, то антивирус может:
-
Сканировать программу при каждом запуске:
- Антивирус будет проверять исполняемые файлы программы (например,
.exe
) на наличие вредоносного кода.
- Антивирус будет проверять исполняемые файлы программы (например,
-
Сканировать файлы, с которыми работает программа:
- Антивирус будет анализировать любые файлы, которые открывает или создает программа (например, файлы проекта, конфигурации, временные файлы и т. д.), чтобы предотвратить потенциальные угрозы.
-
Замедлять работу программы:
- Постоянное сканирование файлов в реальном времени может значительно снизить производительность, особенно если программа активно взаимодействует с большим количеством файлов или выполняет частые операции чтения/записи.
-
Блокировать определенные действия:
- Если программа взаимодействует с сетью, антивирус может отслеживать её сетевые запросы. Это иногда вызывает конфликты, такие как проблемы с SSL-сертификатами или замедление соединения. Например, известны случаи, когда Composer отказывался работать из-за подмены сертификата антивирусом.
Чтобы избежать проблем с производительностью и конфликтов, рекомендуется добавить программу в список исключений (доверенных) вашего антивируса.
.
├── addons # Дополнения
│ └── <имя_дополнения> # Основной каталог дополнения
│ └── ospanel_data # Служебные файлы (настройки и конфиги)
├── bin # Общие исполняемые файлы
├── config # Настройки
│ └── <имя_модуля> # Настройки модуля
│ ├── default # Каталог профиля Default
│ │ ├── templates # Шаблоны конфигурации
│ │ └── settings.ini # Настройки модуля для профиля Default
│ └── module.ini # Базовые настройки модуля (вкл/выкл + имя профиля)
├── data # Хранилище данных (базы данных и др.)
├── home # Пользовательские проекты (домены)
├── licenses # Лицензии на компоненты сторонних производителей
├── logs # Файлы журналов
│ └── domains # Журналы проектов
├── modules # Модули
│ └── <имя_модуля> # Основной каталог модуля
│ └── ospanel_data # Служебные файлы (исходники настроек и конфигов)
├── system # Служебный каталог программы
│ └── lang # Языковые файлы
├── temp # Временные файлы
└── user # Пользовательские данные
└── ssl # Пользовательские файлы SSL (ключи, сертификаты и др.)
Caution
Крайне не рекомендуется запускать Open Server Panel с правами администратора. Это может представлять потенциальную угрозу безопасности и не является обязательным условием для работы программы.
-
Запуск программы:
- Запустите Open Server Panel из меню «Пуск» или вручную, выполнив файл
.\bin\ospanel.exe
(для портативной установки). - Убедитесь, что значок Open Server Panel появился в области уведомлений Windows.
- Запустите Open Server Panel из меню «Пуск» или вручную, выполнив файл
-
Анализ ошибок запуска (при необходимости):
- Если программа не запускается, проверьте её журнал.
-
Распространенные ошибки веб-сервера:
-
Address already in use (#10048 in listen: Bind)
: Указанный IP-адрес и порт уже используются другим приложением. Измените настройки IP/порта API в конфигурации Open Server Panel или в настройках конфликтующего приложения. -
Permission denied (#10013 in listen: Bind)
: Отказано в разрешении на использование указанного IP-адреса и порта. Настройте системный файрвол, чтобы разрешить Open Server Panel доступ к сети. -
ospurl.exe не удалось установить связь с API программы
: Настройте системный файрвол и/или прокси, чтобы разрешить утилитам, которые входят в состав программного комплекса, сетевой доступ к API Open Server Panel и к сети Интернет.
-
-
Запуск CLI-интерфейса:
- Откройте CLI-интерфейс: Меню -> Интерфейс командной строки.
-
Ошибка
The system cannot write to the specified device
: Измените шрифт консоли на совместимый с кодировкой UTF-8 (например, Consolas) и перезапустите CLI-интерфейс. -
Проверка логов: Выполните команду
osp log general
в CLI-интерфейсе, чтобы проверить наличие ошибок или предупреждений в журнале программы.
-
Инициализация корневого CA-сертификата (при необходимости):
- Если корневой CA-сертификат не был создан во время установки, выполните команду
osp cacert init
в CLI-интерфейсе.
- Если корневой CA-сертификат не был создан во время установки, выполните команду
-
Подготовка системы (при необходимости):
- Если System Preparation Tool не был запущен во время установки, запустите его с помощью команды
osp sysprep
в CLI-интерфейсе. - Важно: После завершения подготовки системы обязательно перезагрузите компьютер.
- Если System Preparation Tool не был запущен во время установки, запустите его с помощью команды
Important
Open Server Panel не будет работать корректно без предварительной подготовки системы с помощью System Preparation Tool. Подробнее о функциях утилиты можно узнать здесь.
Готово!
Вы успешно запустили Open Server Panel в первый раз! После установки вам доступно несколько тестовых проектов. Чтобы они начали работать, выполните следующие шаги:
- В меню программы выберите версию PHP для каждого проекта.
- Включите выбранные модули.
Важно: Обратите внимание, что все модули по умолчанию отключены.
Для установки дополнительных модулей запустите инсталлятор Open Server Panel повторно, снимите галочки со всех компонентов и выберите только необходимые модули.
При использовании портативной версии Open Server Panel на другом компьютере необходимо установить корневой SSL-сертификат и выполнить подготовку системы на этом компьютере. Для этого запустите CLI-интерфейс и выполните команды osp cacert init
и osp sysprep
.
1. Создайте структуру папок
- Создайте корневой каталог проекта, например:
home\example.local
. - Внутри него создайте:
- папку
.osp
— для файлов настроек; - при необходимости папку
public
— для файлов вашего веб‑проекта.
- папку
2. Перезапустите Open Server Panel
-
После перезапуска проект будет автоматически обнаружен.
-
В каталоге
.osp
появится базовый набор файлов настроек, включаяproject.ini
. -
Выберите и измените версии движков (HTTP/NODE/PHP) через меню программы.
Если вашему проекту нужны дополнительные модули, не входящие в выбранные движки, укажите их в параметре
environment
файлаproject.ini
через пробел, затем снова перезапустите Open Server Panel.
3. Включите модули проекта
- В меню программы выберите пункт «Включить модули проекта» для активации нужных модулей.
Важно:
- Имя проекта (домена) не может быть
auto
— это служебное имя. - Если в одном корневом каталоге размещено несколько проектов, вы можете добавить несколько конфигурационных блоков в один файл
project.ini
.
Если ваш браузер не использует хранилище сертификатов Windows (например, Firefox), импортируйте корневой сертификат Open Server Panel вручную:
- Firefox: Настройки -> Сертификаты -> Просмотр сертификатов... -> Вкладка "Центры сертификации" -> Импортировать...
-
Путь к сертификату:
data\ssl\root\cert.crt
- Перезапустите браузер
Important
Повторите импорт сертификата после каждого пересоздания корневого сертификата с помощью команды osp cacert init
.
- Подробная информация о настройке проектов доступна здесь.
- Примеры доменов, доступных по умолчанию после установки Open Server Panel, можно найти в каталоге
home
.
Open Server Panel по умолчанию использует CMD.exe
(стандартный интерпретатор командной строки Windows). Выбор консоли осуществляется с помощью настроек программы.
Tip
Для более удобной и современной работы рекомендуется установить и использовать Windows Terminal. Windows Terminal — это новое приложение для работы с командной строкой, поддерживающее различные оболочки, включая Command Prompt, PowerShell и WSL.
Важно:
- PowerShell не поддерживается. Не используйте PowerShell для работы с Open Server Panel.
- При использовании Windows Terminal выбирайте профиль «Командная строка», а не «Windows PowerShell».
Использование: osp <команда> [<аргументы>]
Управление средой:
add <MODULE|ADDON> Объединить среду указанного модуля или дополнения с текущей средой
info Показать информацию о текущей среде
project <DOMAIN> [start] Активировать среду проекта и перейти в его корневой каталог
Используйте [start] для запуска проекта (если настроено)
Не указывайте никакие аргументы для запуска селектора проектов
Используйте домен "auto" для определения проекта по текущему каталогу
reset [init] Сбросить текущую среду в консоли (оригинальная среда системы)
Используйте [init] для инициализации интерфейса командной строки
use <MODULE|ADDON> Применить среду указанного модуля или дополнения
При выключенном модуле часть функций (утилиты, команды,
работа с базами данных) может быть недоступна!
Управление модулями:
init <MODULE> [PROFILE] Перечитать настройки модуля и пересоздать временные файлы (конфиги)
При необходимости укажите новый активный профиль настроек модуля
Эта команда недоступна для модулей находящихся в активном состоянии!
Примените среду модуля повторно (команда "use" или "add"), если она
сейчас активна, а настройки или профиль настроек изменились!
off <MODULE> Выключить модуль
on <MODULE> [PROFILE] Включить модуль (при необходимости укажите новый активный профиль)
restart <MODULE> [PROFILE] Перезапустить модуль (при необходимости укажите новый активный профиль)
shell <MODULE> Запустить shell или интерфейс командной строки модуля (если доступно)
status <MODULE> Показать информацию о статусе модуля
Управление Node.js:
node install <N> Установить версию Node.js. Варианты номера версии <N>:
- конкретный номер версии
- "latest" для последней версии
- "lts" для последней LTS версии
После установки используйте команды "osp use Node-x.x.x" или
"osp add Node-x.x.x" с полным номером версии
node list [available] Показать список установленных версий Node.js
Используйте флаг [available] для просмотра доступных версий Node.js
node uninstall <N> Удаление ранее установленной версии Node.js
Другие команды:
addons Показать информацию о дополнениях
cacert <init|show|deinit> Сгенерировать и установить|показать|удалить корневой сертификат (ЦС)
При установке нового все старые корневые сертификаты (ЦС) будут удалены
Перезапустите браузер для применения нового корневого сертификата
convert <DOMAIN> Конвертировать имя домена из/в Punycode
exit Завершить работу программы (текущая среда будет сброшена)
log <PATTERN> [N] Показать журналы по фильтру пути к файлу (последние N строк)
Используйте регулярное выражение для выбора выводимых журналов
Показать все журналы модуля PHP-8.0: osp log php-8\.0
Показать все журналы доступа к доменам: osp log domains\\(.+)_access
Показать все журналы программы: osp log "\\(general|api|scheduler)"
Показать все доступные журналы (последние 15 строк): osp log . 15
modules Показать информацию о модулях
projects Показать информацию о проектах
status Показать статус всех систем (заданий, доменов, дополнений и модулей)
sysprep [silent|ssd] Запустить инструмент подготовки операционной системы
Добавьте [silent] для запуска подготовки системы в тихом режиме
Флаг [ssd] аналогичен [silent] (но с оптимизацией настроек под SSD)
Подготовка в тихом режиме выполняется автоматически, прогресс
не отображается. После завершения система будет перезагружена!
tasks Показать информацию о заданиях планировщика
version Показать информацию о версии программы
Примеры использования:
osp exit & ospanel Перезапуск программы
osp use PostgreSQL-9.6 Применение в консоли среды модуля PostgreSQL-9.6
osp on PHP-8.1 myprofile Включение модуля PHP-8.1 со сменой профиля настроек на MyProfile
osp restart mysql-8.0 Перезапуск модуля MySQL-8.0 (имя модуля принимается в любом регистре)
osp reset & osp add bind Объединение системной среды со средой Bind
Вспомогательные утилиты:
aria2c Утилита для загрузки файлов по протоколам HTTP(S), (S)FTP и BitTorrent
bat Клон cat (linux) с подсветкой синтаксиса и интеграцией Git
brotli Утилита для сжатия данных без потерь с открытым исходным кодом
curl Инструмент командной строки для передачи данных с помощью URL-адресов
dust Утилита похожая на du (linux), но более интуитивная и понятная!
fd Простая и быстрая утилита для поиска записей в файловой системе
goipelookup Программа для определения геолокации по IP‑адресу
goipelookup6 Программа для определения геолокации по IP‑адресу v6
jq Лёгкий и гибкий JSON-процессор командной строки
mmdbinspect Инструмент для поиска записей в одной или нескольких базах данных .mmdb
oha Утилита нагрузочного тестирования HTTP‑сервисов
sass Dart Sass — популярный компилятор SASS/SCSS файлов
sd Интуитивно понятная программа для поиска и замены текста в файлах
sqlite3 Консольный клиент для работы с базами данных SQLite
wget Неинтерактивная консольная программа для загрузки файлов по сети
xh Удобный и быстрый инструмент для отправки HTTP-запросов
Для следующих команд CLI доступен аргумент silent
, который подавляет вывод всех информационных сообщений, кроме предупреждений и сообщений об ошибках:
osp use ...
osp add ...
osp project ...
osp reset
osp reset init
Для команды osp reset init
вместо аргумента silent
можно использовать аргумент noprint
, чтобы подавить вывод сведений о среде.
Для osp off ...
вместо имени модуля можно использовать аргумент all
.
Среда процесса — это набор переменных и их значений, которые определяют поведение операционной системы и приложений, запущенных в этой среде. Эти переменные используются для хранения информации, необходимой приложениям, и для настройки системных параметров.
- Каждый запущенный процесс в системе имеет свою среду, поэтому её часто называют средой окружения процесса.
- В консоли для просмотра переменных среды и их значений используйте команду
set
.
Open Server Panel наследует среду родительского процесса (обычно explorer.exe
, т.е. стандартную системную среду) при запуске и сохраняет её до завершения работы.
- Все процессы, запущенные Open Server Panel через меню, консоль (только для среды "System") или планировщик заданий, также наследуют эту среду.
- Важно: Если настройки среды в вашей системе изменились во время работы Open Server Panel, может потребоваться перезапуск программы.
Модули Open Server Panel работают в собственной изолированной среде, которая формируется следующим образом:
- Фильтрация системной среды: Из системной среды удаляются переменные, которые не указаны в списке разрешенных переменных в настройках программы или модуля.
- Добавление переменных: К отфильтрованной среде добавляются дополнительные переменные, заданные в настройках программы или модуля.
-
Предварительно настроенная среда: Для всех модулей Open Server Panel настроена готовая к использованию среда, которую можно активировать командой
osp use ...
. -
Быстрый запуск shell/cli: Для запуска shell/cli оболочки модуля используйте команду
osp shell ...
. Активация или присоединение среды модуля не требуется.
Текущая среда всегда отображается в заголовке окна консоли (или в названии вкладки), например: PHP-8.0 + MySQL-5.7 | Open Server Panel
.
-
Объединение сред: Модули разных типов можно объединить в одну среду с помощью команды
osp add ...
. -
Конфликты имен переменных: При наличии переменных с одинаковыми именами в разных средах, финальное значение переменной берется из среды модуля, подключенного последним (кроме переменной
PATH
, значения которой объединяются). -
Переключение между проектами: Для переключения между проектами в консоли используйте команду
osp project ...
, которая активирует среду проекта (PHP/Apache/Node + модули и дополнения, заданные опциейenvironment
в файлеproject.ini
) и переходит в его корневой каталог (см.project_dir
).
Для одновременного запуска нескольких модулей используйте команду osp on
для каждого модуля:
osp on Redis
osp on MySQL-5.7
osp on PHP-7.4
Important
Для корректной установки пути к каталогу временных файлов (переменные TMP
и TEMP
) подключайте самый важный модуль последним.
Для объединения сред нескольких модулей без изоляции от системной переменной PATH
используйте следующие команды:
osp reset
osp add Redis
osp add MySQL-5.7
osp add PHP-7.4
Для объединения сред нескольких модулей с изоляцией от системной переменной PATH
используйте следующие команды:
osp use Redis
osp add MySQL-5.7
osp add PHP-7.4
После выполнения команд вы увидите следующий вывод в консоли:
Redis: Рабочий процесс модуля успешно запущен
MySQL-5.7: Рабочий процесс модуля успешно запущен
PHP-7.4: Рабочий процесс модуля успешно запущен
Текущая среда: Redis
Текущая среда: Redis + MySQL-5.7
Текущая среда: Redis + MySQL-5.7 + PHP-7.4
Теперь вы можете работать с PHP-7.4, MySQL-5.7 и Redis одновременно:
php -v
mysql -V
redis-cli -v
- Готов к использованию: Composer предустановлен и готов к работе без дополнительной настройки.
- Активация среды: Для работы с Composer в консоли активируйте среду любого проекта или модуля PHP.
- Изолированные версии: Каждый модуль PHP имеет собственную версию Composer и отдельный домашний каталог.
Пример установки Zephir в PHP 7.4 с помощью Composer:
-
Включение расширения: Раскомментируйте строку
extension=zephir_parser
в файле.\config\PHP-7.4\default\templates\php.ini
. -
Перезапуск PHP: Выполните команду
osp restart php-7.4
в CLI-интерфейсе (Меню -> Интерфейс командной строки). -
Активация среды: Выполните команду
osp use php-7.4
. -
Установка Zephir:
cd %COMPOSER_HOME% composer require phalcon/zephir
-
Проверка установки: Выполните команду
zephir help
.
NVM (Node Version Manager)
- Встроенный инструмент: NVM включен в дистрибутив Open Server Panel и устанавливается как дополнение.
-
Работа через прослойку: Взаимодействие с NVM осуществляется через специальную прослойку с помощью команды
osp node ...
. -
Настройка команды запуска: Задайте команду запуска приложения в настройках проекта, используя параметр
start_command
. -
Пример:
start_command = nodemon app.js
Tip
Для удобного запуска приложений используйте nodemon. Пример использования nodemon
можно посмотреть здесь.
Important
При работе с NVM обращайте внимание только на сообщения об ошибках.
Игнорируйте советы NVM по использованию команд nvm ...
— они недоступны в Open Server Panel.
Такая реализация NVM обусловлена тем, что оригинальный NVM не поддерживает одновременное использование нескольких версий Node.js.
Встроенный планировщик заданий работает аналогично демону Cron в системах Unix. Задания планировщика описываются в файле <проект>\.osp\tasks.ini
.
Important
Для применения изменений в файле tasks.ini
необходимо перезапустить Open Server Panel.
-
Базовый каталог: Все задания запускаются в базовом каталоге проекта (см.
base_dir
). - Статус проекта: Задания не выполняются, если проект находится в статусе «Выключен» или «Ошибка».
Каждая секция в файле tasks.ini
описывает набор заданий для проекта, имя которого указано в названии секции.
План выполнения задания состоит из 7 колонок, разделяемых пробелами. Колонки задают время выполнения и настройки задания (минута, час, день, месяц, день недели, лимит, выключатель). В первых 5-ти колонках может находиться число, список чисел, разделённых запятыми, диапазон чисел, разделённых дефисом, символы *
или /
. В колонках 6-7 могут находится только числа и символ *
.
* * * * * * * команда
- - - - - - -
| | | | | | |
| | | | | | ----- включение/выключение задания (* или 1 - включено, 0 - выключено)
| | | | | ------- лимит на количество запусков (* или 0 - безлимитно)
| | | | --------- день недели (1—7)
| | | ----------- месяц (1—12)
| | ------------- день месяца (1—31)
| --------------- час (0—23)
----------------- минута (0—59)
Примеры:
15 14 1 * * * * # выполнять 1 числа каждого месяца в 14 часов 15 минут
0 22 * * 1-5 * * # каждый рабочий день в 22:00
23 */2 * * * * * # выполнять в 0:23, 2:23, 4:23 и т.д.
5 4 * * 7 * * # выполнять в 4:05 по воскресеньям
15 10,13 * * 1,4 * * # выполнять в понедельник и четверг в 10:15 и 13:15
* * * * * * * # выполнять ежеминутно
0-59/2 * * * * * * # выполнять по чётным минутам
1-59/2 * * * * * * # выполнять по нечётным минутам
*/5 * * * * * * # выполнять каждые 5 минут
* * * * * 1 0 # выполнить 1 раз после запуска программы (задание выключено)
В заданиях планировщика можно использовать следующие шаблонные переменные:
Переменная | Описание |
---|---|
{app_start_command} |
Команда запуска приложения проекта (если настроена) |
{backend_ip} |
IP-адрес подключения к серверной части (Backend) |
{backend_port} |
Порт подключения к серверной части (Backend) |
{base_dir} |
Корневой каталог проекта (где находится каталог .osp ) |
{base_url} |
URL проекта |
{date_time} |
Текущая дата/время |
{host} |
Имя домена (для интернационализированных доменов используется Punycode) |
{host_decoded} |
Видимое имя домена (без Punycode) |
{host_scheme} |
Схема запроса к проекту ("http" или "https", зависит от параметра SSL в настройках проекта) |
{http_engine} |
Движок веб-сервера |
{http_port} |
Порт запроса к проекту по протоколу HTTP |
{https_port} |
Порт запроса к проекту по протоколу HTTPS |
{node_engine} |
Движок Node.js |
{php_engine} |
Движок PHP |
{project_root} |
Корневой каталог проекта |
{root_dir} |
Корневой каталог Open Server Panel (полный путь) |
{root_drive} |
Диск корневого каталога |
{root_path} |
Путь к корневому каталогу Open Server Panel |
{scheme_port} |
Порт запроса к проекту (":{http_port}"" или ":{https_port}", зависит от параметра SSL в настройках проекта). Если {http_port} или {https_port} имеет стандартное значение 80 или 443, то {scheme_port} будет пустым. |
{terminal_codepage} |
Кодировка консоли (см. terminal_codepage ) |
{web_root} |
Публичный каталог проекта |
Помимо шаблонных переменных, можно использовать любые переменные среды Windows, например: %SYSTEMROOT%
, %SYSTEMDRIVE%
, %USERNAME%
, %PATH%
и т.д.
Обратите внимание, что при необходимости выполнения команды в рамках среды проекта нужно активировать среду проекта через osp project
перед выполнением самой команды.
Имя задания обязательно.
Пример файла tasks.ini
:
[example.local]
Запуск Node-приложения = * * * * * 1 * cmd.exe /c "osp project {host} start"
Резервное копирование = */5 * * * * * * cmd.exe /c "tar -czf {base_dir}\.osp\backup\{host_decoded}.tar.gz -C {public_dir} *"
Laravel Schedule = * * * * * * * cmd.exe /c "osp project {host} & php artisan schedule:run"
[forum.example.local]
Вызов cron.php по HTTPS = */30 * * * * * 0 wget.exe --secure-protocol=TLSv1_2 -q --no-cache https://{host}/cron.php -O nul
Вызов cron.php из PHP = 0-59/2 * * * * * * cmd.exe /c "osp project {host} & php -f cron.php"
Резервное копирование = */5 * * * * 1 * cmd.exe /c "tar -czf {base_dir}\.osp\backup\{host_decoded}.tar.gz -C {public_dir} *"
Пример задания с сохранением вывода в файл:
[my-project.loc]
Тестовое задание = * * * * * * * cmd.exe /c "osp project {host} & php -f {base_dir}\script.php >> {base_dir}\log.txt"
В этом примере задание запускается каждую минуту и выполняет скрипт script.php
, используя выбранный для проекта модуль PHP. Результат выполнения скрипта записывается в файл log.txt
.
- Модули по умолчанию выключены: Перед началом работы включите необходимые модули.
- Параллельная работа: Модули могут запускаться параллельно без конфликтов.
- Изолированная среда: Каждый модуль работает в своей изолированной среде, что предотвращает конфликты с другим ПО.
- Поддержка однотипных модулей: Можно одновременно запускать несколько версий одного модуля (например, MySQL 5.7 и MySQL 8.0).
- Локальные IP-адреса: По умолчанию все модули настроены на использование только локальных IP-адресов (кроме модулей DNS и Mail категорий).
- Стандартные порты и учетные данные: Используются стандартные порты и логины. Пароли и ограничения по умолчанию отсутствуют. Эти настройки можно изменить.
Важно:
- PostgreSQL и UAC: Запуск модулей PostgreSQL невозможен при отключенном контроле учетных записей (UAC) или запуске Open Server Panel с правами администратора.
- Безопасность: Запуск Open Server Panel на публичных IP-адресах без дополнительной защиты крайне опасен. Это может привести к несанкционированному доступу к вашему компьютеру, вплоть до полного контроля над системой и потери данных.
Рекомендации по безопасности:
- Надежные пароли: Задайте надежные пароли для всех пользователей, если это возможно.
- Ограничение доступа: Настройте правила файрвола, разрешив доступ к модулям только с доверенных IP-адресов.
-
Поддержка
.user.ini
: Модули PHP поддерживают файлы.user.ini
на уровне каталога. PHP ищет.user.ini
в каждой директории, начиная с директории запрашиваемого PHP-файла, и продолжает поиск до корневой директории проекта. В файлах.user.ini
распознаются только INI-настройки с режимамиINI_PERDIR
иINI_USER
.
- При запуске Open Server Panel происходит инициализация всех доступных модулей.
- В процессе инициализации проверяется конфигурация модулей и создаются временные файлы.
- Это позволяет использовать консольные утилиты и команды модуля, независимо от того, включен он или нет.
- Важно: Некоторые утилиты и команды могут не работать, если модуль выключен.
Инициализация модулей без их включения может быть полезна для:
- Восстановления баз данных
- Обновления хранилища данных
- Проверки временных файлов конфигурации
На диаграмме ниже показана схема запуска модулей Open Server Panel:
%%{init: {'theme':'forest'}}%%
graph TD;
A(Запуск<br>Open Server Panel)-->B(Инициализация модуля);
B-->|"Провал"| C(Статус<br>'Ошибка');
B-->|"Успех"| D(Проверка состояния);
D-->|"Если выключён"| F(Статус<br>'Выключен');
D-->|"Если включён"| G(Запуск модуля);
G-->|"Провал"| C;
G-->|"Успех"| H(Статус<br>'Включён');
H-->|"Если процесс<br>неожиданно завершился<br>во время испытательного срока"| C;
H-->|"Если процесс<br>неожиданно завершился"| G;
Описание:
- Запуск Open Server Panel: При запуске Open Server Panel происходит инициализация всех доступных модулей.
- Инициализация модуля: Проверяется конфигурация модуля и создаются временные файлы.
- Статус «Ошибка»: Если инициализация завершается неудачей, модуль переходит в состояние «Ошибка».
- Проверка состояния: Если инициализация прошла успешно, проверяется состояние модуля (включен/выключен).
- Статус «Выключен»: Если модуль выключен, он остается в этом состоянии.
- Запуск модуля: Если модуль включен, он запускается.
- Статус «Включён»: Если запуск прошел успешно, модуль переходит в состояние «Включён».
-
Завершение процесса во время испытательного срока: Если процесс модуля неожиданно завершается во время испытательного срока (см. параметр
probation
в настройках модуля), модуль переходит в состояние «Ошибка». - Завершение процесса: Если процесс модуля неожиданно завершается после испытательного срока, происходит повторный запуск модуля.
Для подключения к модулям из PHP-скриптов и сторонних приложений используйте следующие параметры:
-
Хост: Имя модуля (например,
MySQL-5.7
). Регистр не имеет значения (mysql-5.7
илиMYSQL-5.7
тоже допустимы). Можно добавить.local
для совместимости с приложениями, требующими доменного имени (например,mysql-5.7.local
). - Порт: Стандартный порт модуля.
- Пользователь: Стандартный пользователь модуля (если применимо).
- Пароль: Без пароля (если применимо).
Модуль | Хост | Порт | Пользователь | Пароль |
---|---|---|---|---|
MySQL-5.7 |
MySQL-5.7 , mysql-5.7 , mysql-5.7.local
|
3306 |
root |
- |
Memcached | Memcached |
11211 |
- | - |
MongoDB-4.4 | MongoDB-4.4 |
27017 |
- | - |
PostgreSQL-12 | PostgreSQL-12 |
5432 |
postgres |
- |
RabbitMQ-3.13 | RabbitMQ-3.13 |
5672 |
- | - |
Redis | Redis |
6379 |
- | - |
SMTP | 127.0.0.1 |
25 |
- | - |
SMTP-сервер:
- Для запуска SMTP-сервера включите модуль Mailpit или Smtp4dev.
- Для успешной обработки письма SMTP-сервером в отправляемом письме должен быть указан заголовок
FROM
. - Если заголовок
FROM
отсутствует, активируйте и заполните переменнуюsendmail_from
в шаблоне файлаphp.ini
.
Caution
Не используйте служебные IP-адреса модулей! Служебные IP-адреса используются только для внутренней работы модулей и назначаются автоматически. Они не предназначены для подключения к модулям.
Tip
В качестве универсального менеджера баз данных рекомендуется использовать DBeaver. DBeaver поддерживает различные типы баз данных (MySQL, MariaDB, PostgreSQL, SQLite), регулярно обновляется и стабильно работает.
Open Server Panel включает более 115 расширений PHP, которые по умолчанию отключены.
Чтобы активировать расширение:
- Раскомментируйте соответствующую строку в шаблоне файла конфигурации PHP (
php.ini
). - Перезапустите PHP-модуль.
PHPINFO: PHP 7.2 | PHP 7.3 | PHP 7.4 | PHP 8.0 | PHP 8.1 | PHP 8.2 | PHP 8.3 | PHP 8.4
Note
Если расширение недоступно для определенной версии PHP, это означает, что разработчики расширения не предоставляют его для этой версии PHP.
Caution
Не изменяйте порядок подключения расширений в шаблоне файла php.ini
. Расширения подключаются в определенном порядке в зависимости друг от друга и могут не работать при изменении порядка активации.
Не включайте все расширения PHP подряд - запускайте только те, которые реально нужны вашим сайтам. Это даст два преимущества:
- Меньше шансов, что расширения будут конфликтовать между собой
- Программа будет работать быстрее и занимать меньше памяти компьютера
Например, если ваш сайт не работает с NoSQL базами Redis, расширение redis можно не включать.
Расширение | Зависимость | Несовместимость |
---|---|---|
blackfire |
Осторожно! Расширение может вызывать утечку памяти. |
ddtrace , ioncube , opcache , pcov , xdebug , xhprof
|
brotli |
apcu |
|
couchbase |
apcu , igbinary , lz4 , lzf
|
|
crypto |
openssl |
|
ddtrace |
blackfire , ioncube , opencensus , pcov , xhprof
|
|
ev |
openssl , sockets
|
|
event |
openssl , sockets
|
|
exif |
mbstring |
|
igbinary |
apcu |
|
ioncube |
Осторожно! Расширение может вызывать сбои в работе PHP. |
ddtrace , blackfire , pcov , xhprof , xdebug
|
libevent |
sockets |
|
lz4 |
apcu |
|
mailparse |
mbstring |
|
memcached |
apcu , igbinary , msgpack , lz4 , lzf , zstd
|
|
mongodb |
apcu , openssl , zstd
|
|
msgpack |
apcu |
|
oauth |
curl |
|
opcache |
blackfire При активации xdebug или pcov отключается JIT-компиляция. |
|
pcov |
blackfire , ioncube , xdebug , xhprof
|
|
phalcon |
curl , fileinfo , gd2 , gettext , imagick , mbstring , openssl , pdo , psr
|
|
rdkafka |
simple_kafka_client |
|
redis |
apcu , igbinary
|
|
simple_kafka_client |
rdkafka |
|
solr |
curl |
|
ssh2 |
openssl |
|
stomp |
openssl |
|
xdebug |
blackfire , ioncube , opencensus , pcov , xhprof
|
|
xhprof |
ddtrace , blackfire , ioncube , opencensus , pcov , xdebug
|
|
yac |
apcu , igbinary , msgpack
|
Одновременная активация в нескольких модулях PHP недопустима! |
yar |
curl , igbinary , msgpack
|
|
zstd |
apcu |
Модуль | Ссылка |
---|---|
mod_antiloris |
https://www.monshouwer.eu/download/mod_antiloris/ |
mod_authn_ntlm |
https://github.com/YvesR/mod_authn_ntlm |
mod_fcgid |
https://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html |
mod_jk |
https://tomcat.apache.org/connectors-doc/reference/apache.html |
mod_limitipconn |
https://dominia.org/djao/limitipconn2.html |
mod_log_dbd |
https://sourceforge.net/p/dbd-modules/wiki/mod_log_dbd/ |
mod_log_rotate |
https://github.com/JBlond/mod_log_rotate |
mod_maxminddb |
https://github.com/maxmind/mod_maxminddb |
mod_vhost_dbd |
https://sourceforge.net/p/dbd-modules/wiki/mod_vhost_dbd/ |
mod_view |
|
mod_watch |
https://github.com/pld-linux/apache-mod_watch |
mod_xsendfile |
https://tn123.org/mod_xsendfile/ |
В дистрибутив Open Server Panel добавлены следующие модули Nginx, отсутствующие в оригинальном дистрибутиве Nginx для Windows:
Модуль | Описание |
---|---|
http_addition_module |
📝 Добавление контента до и после ответа |
http_auth_request_module |
🔐 Аутентификация через внешний сервис |
http_dav_module |
📂 WebDAV методы |
http_flv_module |
🎬 Потоковое воспроизведение FLV |
http_geoip_module |
🌍 Геолокация по IP (legacy) |
http_gunzip_module |
📤 Декомпрессия для клиентов |
http_gzip_static_module |
🗜️ Предварительно сжатые файлы |
http_image_filter_module |
🖼️ Обработка изображений |
http_mp4_module |
🎥 Потоковое воспроизведение MP4 |
http_random_index_module |
🎲 Случайный индексный файл |
http_realip_module |
🌐 Получение реального IP клиента |
http_secure_link_module |
🔗 Защищенные ссылки |
http_slice_module |
⚡ Кеширование больших файлов частями |
nginx_brotli_module |
🗜️ Продвинутое сжатие Brotli |
nginx_fancyindex |
🎨 Красивые страницы каталогов |
nginx_http_geoip2_module |
🗺️ Современная геолокация (MaxMind) |
poll_module |
⚡ Оптимизированная обработка событий |
stream_geoip_module |
🌐 Геолокация для TCP/UDP |
stream_realip_module |
📡 Реальный IP для потоков |
Настройки проекта хранятся в файле <проект>\.osp\project.ini
.
-
Несколько доменов/поддоменов: Если проект содержит несколько доменов или поддоменов, добавьте для каждого из них отдельную секцию в файле
project.ini
.
Важно:
- Применение изменений: Для применения изменений перезапустите Open Server Panel. При необходимости очистите кэш DNS в браузере.
- Переключение версий PHP/Веб-сервера/Node.js: Перезапуск Open Server Panel не требуется при смене версии PHP, веб-сервера или Node.js через меню программы. Все необходимые перезапуски и инициализации выполняются автоматически.
- Браузеры Chromium и IPv6: Браузеры на движке Chromium (Chrome, Edge, Vivaldi, Яндекс.Браузер и т.д.) не видят локальные домены с IPv6-адресами при отсутствии доступа по протоколу IPv6 в Интернет. Для работы с такими доменами используйте браузер Firefox или отключите IPv6 для модулей веб-сервера и доменов.
- VPN и прокси: Локальные домены могут быть недоступны при использовании VPN или прокси. Добавьте все локальные домены в исключения VPN/прокси.
-
Конфликты имен: Не создавайте домены с именами, совпадающими с именами модулей или дополнений. Ваш проект (домен) не может называться
auto
— это имя зарезервировано для служебных команд. -
localhost
: Не используйтеlocalhost
в качестве имени домена. Если это всё же необходимо, то укажите127.0.0.1
в качествеip
домена.
Эта секция содержит основные настройки проекта. Все параметры необязательны.
- Интернационализированные домены: Допустимы как обычное, так и Punycode представление.
- IP-адреса как имена доменов: Запрещено использовать IP-адрес в качестве имени домена. Для прямого доступа к домену по IP смотрите инструкцию ниже.
Параметр | Описание |
---|---|
app_start_command |
Команда запуска проекта (например, nodemon app.js ). Можно использовать шаблонные переменные.Кодировка: По умолчанию используется кодировка 65001 (UTF-8). Изменить кодировку можно командой chcp <КОДИРОВКА> .Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: (пусто) |
backend_enabled |
Включить/выключить проксирование на Backend (on /off ). Позволяет автоматически направлять весь входящий трафик (HTTP и HTTPS) проекта на серверную часть (Backend). Полезно для тестирования или разработки, когда фронтенд и бэкенд разделены.Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: off
|
backend_ip |
IP-адрес, по которому осуществляется подключение к серверной части (Backend). Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: (пусто) |
backend_port |
Номер порта для подключения к Backend. Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: 3000
|
base_url |
URL-адрес, открываемый при выборе пункта Открыть проект в браузере в меню Open Server Panel. Можно использовать шаблонные переменные. Панель администрирования: Используйте этот параметр для указания URL-адреса панели администрирования CMS. Значение по умолчанию: https://{host_decoded}
|
bind_ip |
IP-адрес домена. Несколько IP-адресов: Можно указать несколько IP-адресов (через пробел) и использовать IPv6. При обновлении файла HOSTS домену будет назначен первый указанный IP. Важно: Не назначайте один и тот же IP-адрес доменам с разными значениями web_engine .Автоматическое назначение: Оставьте значение пустым для автоматического назначения IP-адреса. Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: (пусто) |
environment |
Список дополнений и модулей (через пробел), среды которых присоединяются к среде проекта при ее активации командой osp project <DOMAIN> .System : Позволяет использовать программы, установленные в системе (например, git.exe или ssh.exe ).Модули PHP/Веб-сервера/Node.js: Среды этих модулей подключаются всегда (если заданы для домена) и не требуют указания в этом параметре. Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: (пусто) |
http2_enabled |
Включить/выключить протокол HTTP/2 (on /off ).Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: off
|
http_engine |
Движок, используемый в качестве веб-сервера для этого домена. Несуществующий модуль: Если указанный модуль не установлен, домен будет проигнорирован. Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: (пусто) |
http_port |
Порт для работы по протоколу HTTP. Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: 80
|
https_port |
Порт для работы по протоколу HTTPS. Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: 443
|
node_engine |
Движок Node.js, используемый для запуска Node.js-приложений этого домена. Установка Node.js: Предварительно установите нужную версию Node.js с помощью дополнения NVM. Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: (пусто) |
php_engine |
Движок PHP, используемый для обработки PHP-файлов этого домена. Несуществующий модуль: Если указанный модуль PHP не установлен, домен будет проигнорирован. Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: (пусто) |
primary_domain |
Параметр служит для указания главного домена в проектах с несколькими доменами/поддоменами и нужен для корректной активации домена командой osp project auto, когда он определяется по текущему каталогу. Значение по умолчанию: off
|
project_category |
Категория проекта в меню программы. Скрытая категория: Доступна специальная категория hidden для служебных ресурсов - проекты в этой категории не отображаются в основном меню. Это удобно для размещения административных инструментов, таких как phpMyAdmin. |
project_enabled |
Включить/выключить проект (on /off ).Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: on
|
project_root |
Корневой каталог проекта, используемый командой osp project <DOMAIN> . Можно использовать шаблонные переменные.Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Разрешённые символы: A-Za-z0-9-+_.\: Значение по умолчанию: {base_dir}
|
server_aliases |
Псевдонимы (алиасы) домена (через пробел). Другие домены: Можно использовать другие домены в качестве псевдонимов (например, при переезде сайта на новый домен). Важно: Алиасы вида *.example.local не поддерживаются файлом HOSTS в Windows. Не используйте * в качестве знака подстановки без активации модуля DNS (Bind или Unbound) и правильной настройки зоны домена.Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: www.{host}
|
terminal_codepage |
Кодировка консоли при работе со средой проекта (например, 65001 или 1251 ). Если параметр не задан локально и глобально, будет использована кодировка, заданная для среды модуля PHP.Наследование: Если параметр не задан локально, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: (пусто) |
tls_cert_file |
Файл сертификата. Можно использовать шаблонные переменные. Разрешённые символы: A-Za-z0-9-+_.\: Значение по умолчанию: автоматически сгенерированный сертификат |
tls_enabled |
Включить/выключить SSL (on /off ). При отключенном SSL работа с доменом по HTTPS будет невозможна.Наследование: Если параметр не задан, используется глобальное значение из основных настроек Open Server Panel. Значение по умолчанию: on
|
tls_key_file |
Файл ключа. Можно использовать шаблонные переменные. Разрешённые символы: A-Za-z0-9-+_.\: Значение по умолчанию: автоматически сгенерированный ключ |
web_root |
Публичный каталог проекта. Можно использовать шаблонные переменные. |
Переменная | Описание |
---|---|
{app_start_command} |
Команда запуска приложения проекта (если настроена) |
{backend_ip} |
IP-адрес подключения к серверной части (Backend) |
{backend_port} |
Порт подключения к серверной части (Backend) |
{base_dir} |
Корневой каталог проекта (где находится каталог .osp ) |
{base_url} |
URL проекта |
{date_time} |
Текущая дата/время (только для app_start_command ) |
{host} |
Имя домена (для интернационализированных доменов используется Punycode) |
{host_decoded} |
Видимое имя домена (без Punycode) |
{host_scheme} |
Схема запроса к проекту ("http" или "https", зависит от параметра SSL в настройках проекта) |
{http_engine} |
Движок веб-сервера |
{http_port} |
Порт запроса к проекту по протоколу HTTP |
{https_port} |
Порт запроса к проекту по протоколу HTTPS |
{node_engine} |
Движок Node.js |
{php_engine} |
Движок PHP |
{project_root} |
Корневой каталог проекта |
{root_dir} |
Корневой каталог Open Server Panel (полный путь) |
{root_drive} |
Диск корневого каталога |
{root_path} |
Путь к корневому каталогу Open Server Panel |
{scheme_port} |
Порт запроса к проекту (":{http_port}"" или ":{https_port}", зависит от параметра SSL в настройках проекта). Если {http_port} или {https_port} имеет стандартное значение 80 или 443, то {scheme_port} будет пустым. |
{terminal_codepage} |
Кодировка консоли (см. terminal_codepage ) |
{web_root} |
Публичный каталог проекта |
Для обеспечения доступа к домену по IP-адресу выполните следующие шаги:
-
Укажите IP-адрес в параметре
ip
— это основной IP, к которому будет привязан домен. -
Добавьте IP-адрес в список псевдонимов (
aliases
) — если вы хотите, чтобы к вашему ресурсу можно было обращаться напрямую по IP, добавьте этот IP как псевдоним.
Если ваш сервер находится внутри локальной сети за роутером:
- В параметре
ip
укажите локальный статический IP-адрес вашего компьютера (например,192.168.1.100
). - В параметре
aliases
добавьте внешний статический IP-адрес, который ваш роутер получил от интернет-провайдера (например,203.0.113.25
). - Убедитесь, что на роутере настроен проброс портов (port forwarding) — как минимум HTTP (порт 80) и HTTPS (порт 443) — на внутренний IP-адрес вашей машины. Подробнее о настройке проброса портов смотрите в руководстве к вашему роутеру.
Important
Использование динамического внешнего IP-адреса (который может меняться) может привести к недоступности сервиса. Рекомендуется использовать статический внешний IP или настроить динамический DNS (DDNS).
Tip
Чтобы домены были доступны по имени, необходимо вручную добавить их в файл HOSTS на удалённом компьютере(ах), указав соответствующий внешний IP-адрес.
Чтобы добавить собственную конфигурацию домена внутрь автоматически сконфигурированного блока <VirtualHost>
(Apache) или Server{}
(Nginx):
-
Создайте каталог и файл: Создайте каталог
<проект>\.osp\Apache
или<проект>\.osp\Nginx
и файл<имя_домена>.conf
в этом каталоге.-
Пример:
<проект>\.osp\Apache\example.local.conf
- Punycode: Используйте Punycode для интернационализированных доменов.
-
Пример:
- Добавьте конфигурацию: Добавьте необходимые директивы в созданный файл.
- Перезапустите Open Server Panel.
Tip
Этот способ позволяет использовать собственную конфигурацию без необходимости детальной настройки параметров хоста. Учитывайте, что вы уже находитесь внутри блока <VirtualHost>
(Apache) или Server{}
(Nginx), а основные параметры хоста уже заданы.
Чтобы создать собственный блок <VirtualHost>
(Apache) или Server{}
(Nginx):
-
Создайте каталог и файл: Создайте каталог
<проект>\.osp\Apache
или<проект>\.osp\Nginx
и файл<имя_домена>.conf
в этом каталоге.-
Пример:
<проект>\.osp\Apache\example.local.conf
- Punycode: Используйте Punycode для интернационализированных доменов.
-
Пример:
-
Добавьте блок конфигурации: Добавьте блок
<VirtualHost>
(Apache) илиServer{}
(Nginx) с полной конфигурацией домена в созданный файл. - Перезапустите Open Server Panel.
Important
Этот способ требует продвинутых знаний Apache/Nginx и Open Server Panel.
-
Каталог
.\osp\bin
: Создайте каталог.osp\bin
в каталоге проекта для хранения служебных скриптов. Этот каталог будет добавлен в переменнуюPATH
при активации среды проекта. Базовый и публичный каталоги проекта всегда добавляются вPATH
. -
Дополнительные пункты меню и языковые константы: Проект может добавлять пункты в меню Open Server Panel и определять собственные языковые константы. Пример можно найти в проекте
full-example.local
, доступном после установки Open Server Panel.
Для настройки переменных среды проекта создайте файл .osp\env.ini
.
Пример:
[full-example.local]
ANY_VALUE = SOMETHING
Настройки каждого модуля хранятся в файле .\config\<имя_модуля>\<имя_профиля>\settings.ini
.
Шаблоны конфигурации каждого модуля хранятся в каталоге .\config\<имя_модуля>\<имя_профиля>\templates
.
-
Профиль по умолчанию:
default
. - Смена профиля: Активный профиль можно сменить через меню Open Server Panel.
-
Резервные копии:
- Оригинальные настройки и файлы конфигурации:
.\modules\<имя_модуля>\ospanel_data\default
. - Оригинальные файлы данных (если есть):
.\modules\<имя_модуля>\ospanel_data\default_data
. -
Будущая функциональность: Эти данные будут использоваться для восстановления оригинальной конфигурации модуля в панели управления, поэтому никогда не используйте и не изменяйте содержимое каталога
.\modules\<имя_модуля>\ospanel_data
.
- Оригинальные настройки и файлы конфигурации:
Важно:
- Применение изменений настроек: Перезапустите Open Server Panel.
- Применение изменений в шаблонах: Перезапустите или переинициализируйте модуль.
Эта секция содержит основные настройки модуля. Все параметры необязательны.
Параметр | Описание |
---|---|
additional_ssl_hosts |
Список дополнительных IP-адресов и доменных имён, которые будут включены в автоматически генерируемый SSL-сертификат. |
ignore_shutdown_all |
При активации данного параметра модуль проигнорирует команду выключения всех модулей и продолжит функционировать после выключения остальных модулей. Настройка не влияет на возможность индивидуального выключения модуля и на выключение всех модулей вызываемое через консольный интерфейс (в этом случае будут выключены все модули). |
ip |
IP-адрес модуля. Несколько IP-адресов: Можно указать несколько IP-адресов (через пробел) и использовать IPv6, если модуль это поддерживает. При обновлении файла HOSTS будет использован первый указанный IP-адрес. DNS: Этот параметр игнорируется для модулей DNS. |
port |
Порт модуля. Особенности: Этот параметр игнорируется для модулей Apache, Nginx, Bind и Unbound. |
clean_directories |
Каталоги, очищаемые перед запуском модуля (через пробел). Например: кэш, временные файлы и т.д. Можно использовать шаблонные переменные. |
log_directory |
Каталог для хранения логов модуля. Создается автоматически, если не существует. Можно использовать шаблонные переменные. |
log_level_values |
Доступные уровни журналирования (поддерживается не всеми модулями). |
log_level |
Уровень журналирования (значение из log_level_values ). |
query_log_values |
Доступные уровни журналирования запросов (поддерживается не всеми модулями). |
query_log_level |
Уровень журналирования запросов (значение из query_log_values ). |
shell_command |
Команда запуска shell/cli оболочки модуля. Можно использовать шаблонные переменные. |
ssl_auto_cert |
Автоматическая генерация и использование SSL-сертификата (on /off ).Отключение: - Этот параметр всегда имеет значение off , если IP-адрес модуля не указан.- При отключении этого параметра необходимо вручную настроить конфигурацию SSL модуля (отключить SSL или указать собственные ключи и сертификаты). - Браузеры без хранилища сертификатов Windows (например, Firefox): Импортируйте корневой сертификат Open Server Panel ( data\ssl\root\cert.crt ) в браузер. Повторите импорт после каждого пересоздания корневого сертификата командой osp cacert init . |
start_command |
Команда запуска модуля. Можно использовать шаблонные переменные. |
start_directory |
Каталог запуска модуля (должен существовать). Можно использовать шаблонные переменные. |
work_directories |
Каталоги, необходимые для работы модуля (через пробел). Создаются автоматически, если не существуют. Можно использовать шаблонные переменные. |
used_addons_environment |
Список дополнений (через пробел), среды которых (если есть) присоединяются к среде модуля. Информационные индикаторы в консоли не отображают эти дополнительные среды. Важно: Используйте эту опцию только при полном понимании ее назначения. |
allowed_system_env_vars |
Список переменных среды Windows (через пробел), передаваемых в среду модуля. Назначение: Фильтрация рабочей среды модуля от среды установленного в систему аналогичного ПО. Важно: Изменяйте этот список только при полном понимании последствий. Значение auto (по умолчанию): Используется глобальное значение из основных настроек Open Server Panel. |
log_max_filesize |
Максимальный размер файла журнала (0 — без ограничений). Пересоздание файла: При превышении указанного размера файл журнала будет пересоздан при следующем запуске модуля. Значение auto (по умолчанию): Используется глобальное значение из основных настроек Open Server Panel.Единицы измерения: B (байты), K (килобайты), M (мегабайты), G (гигабайты), T (терабайты).Очистка логов при запуске: Установите значение 1 (байт), чтобы очищать логи при каждом запуске модуля. |
log_write_title |
Добавлять заголовок в файл журнала при каждом запуске модуля (on /off ). Полезно для разделения рабочих сессий, если автоматическая очистка журнала отключена.Значение auto (по умолчанию): Используется глобальное значение из основных настроек Open Server Panel. |
max_probation_fails |
Максимальное количество последовательных (подряд) неудачных запусков модуля (см. probation ), после которых модуль перейдет в состояние «Ошибка».Значение auto (по умолчанию): Используется глобальное значение из основных настроек Open Server Panel. |
max_shutdown_time |
Максимальное время завершения работы модуля (0 — без ограничений). Принудительная остановка: Если модуль не завершит работу за указанное время, он будет принудительно остановлен. Минимальное значение: 30 секунд. Важно: Не устанавливайте это ограничение без полного понимания последствий. Преждевременная остановка модуля может привести к проблемам (повреждение данных, неполная запись логов и т.д.). Значение auto (по умолчанию): Используется глобальное значение из основных настроек Open Server Panel.Единицы измерения: s (секунды), m (минуты), h (часы), d (дни). |
probation |
Время проверки работоспособности модуля (испытательный срок). Начало отсчета: С момента успешного запуска модуля. Состояние «Ошибка»: Если модуль неожиданно завершит работу во время испытательного срока, он не будет перезапущен и перейдет в состояние «Ошибка». Это состояние также устанавливается, если модуль не может запуститься на уровне системы. Отключение: Значение 0 отключает испытательный срок. Модуль всегда будет перезапускаться при сбое. Рекомендации: Не рекомендуется устанавливать значение 0 или слишком короткий период проверки (менее 30 секунд). Значение auto (по умолчанию): Используется глобальное значение из основных настроек Open Server Panel.Единицы измерения: s (секунды), m (минуты), h (часы), d (дни). |
silent_mode |
Тихий режим работы (on /off ). В этом режиме отключаются всплывающие сообщения об ошибках от службы Windows Error Reporting и самого модуля.Отключение: Отключайте этот режим только для диагностики проблем с модулем. Значение auto (по умолчанию): Используется глобальное значение из основных настроек Open Server Panel. |
terminal_codepage |
Кодировка консоли при работе со средой модуля. Специальные значения: - system : Системная кодировка.- auto : Глобальное значение из основных настроек Open Server Panel.Пустое значение: Кодировка консоли не будет изменяться при активации среды модуля или его shell/cli оболочки. |
time_zone |
Часовой пояс (временная зона) в формате Etc/GMT (например, Etc/GMT-3 ).Специальные значения: - system : Системный часовой пояс.- auto : Глобальное значение из основных настроек Open Server Panel.Важно: Формат Etc/GMT отличается от UTC обратным порядком (например, Etc/GMT-3 = UTC/GMT+3 = UTC+03:00 = Europe/Moscow ). |
В параметрах clean_directories
, log_directory
, shell_command
, start_command
, start_directory
и work_directories
можно использовать следующие шаблонные переменные:
Переменная | Описание |
---|---|
{module_name} |
Имя модуля |
{parent_module} |
Родительский модуль (задаётся в описательном файле) |
{profile_name} |
Имя текущего профиля настроек модуля |
{root_dir} |
Корневой каталог Open Server Panel (полный путь) |
{root_drive} |
Диск корневого каталога |
{root_path} |
Путь к корневому каталогу Open Server Panel |
В параметрах shell_command
и start_command
также доступны следующие переменные, если соответствующие параметры заданы в этой же секции:
Переменная | Описание |
---|---|
{date_time} |
Текущая дата/время (только для start_command ) |
{ip} |
IP-адрес(а) модуля |
{port} |
Порт модуля |
{log_level} |
Уровень журналирования |
{query_log_level} |
Уровень журналирования запросов |
{terminal_codepage} |
Кодировка консоли |
{time_zone} |
Часовой пояс в формате Etc/GMT
|
Помимо шаблонных переменных, можно использовать переменные среды Windows, например: %SYSTEMROOT%
, %SYSTEMDRIVE%
, %USERNAME%
, %PATH%
и т.д.
В этой секции можно задавать/переопределять переменные среды модуля (поддерживаемые переменные зависят от модуля).
- Удаление переменной: Задайте пустое значение.
Переменная | Описание |
---|---|
{module_name} |
Имя модуля |
{parent_module} |
Родительский модуль (задаётся в описательном файле) |
{profile_name} |
Имя текущего профиля настроек модуля |
{root_dir} |
Корневой каталог Open Server Panel (полный путь) |
{root_drive} |
Диск корневого каталога |
{root_path} |
Путь к корневому каталогу Open Server Panel |
Также доступны следующие переменные, если соответствующие параметры заданы в секции [main]
:
Переменная | Описание |
---|---|
{ip} |
IP-адрес(а) модуля |
{port} |
Порт модуля |
{log_level} |
Уровень журналирования |
{query_log_level} |
Уровень журналирования запросов |
{terminal_codepage} |
Кодировка консоли |
{time_zone} |
Часовой пояс в формате Etc/GMT
|
Помимо шаблонных переменных, можно использовать переменные среды Windows, например: %SYSTEMROOT%
, %SYSTEMDRIVE%
, %USERNAME%
, %PATH%
и т.д.
Секции с таким названием описывают работу с шаблонами файлов конфигурации и другими служебными файлами модуля. Количество таких секций не ограничено.
-
Расположение шаблонов:
.\config\<имя_модуля>\<имя_профиля>\templates
. - Временные файлы: Во время инициализации модуля шаблоны преобразуются во временные рабочие файлы.
Параметр | Обязательный | Описание |
---|---|---|
comment |
Да | Символ комментария, используемый в файле конфигурации. |
destination |
Да | Путь к временному файлу. Этот файл пересоздается при каждой инициализации модуля и не подлежит редактированию. |
enabled |
Нет | Включить/выключить использование этого файла конфигурации (on /off ).Значение off : Файл временно не используется.Значение по умолчанию: on
|
encoding |
Нет | Кодировка файла конфигурации. Допустимые значения: UTF8 , ANSI , ASCII .Значение по умолчанию: UTF8
|
directory_separator |
Да | Разделитель каталогов, используемый в путях к ресурсам. |
source_dir |
Нет | Каталог для поиска исходного файла-шаблона. Значение по умолчанию: .\config\<имя_модуля>\<имя_профиля>\templates
|
В параметрах destination
и source_dir
можно использовать следующие шаблонные переменные:
Переменная | Описание |
---|---|
{module_name} |
Имя модуля |
{parent_module} |
Родительский модуль (задаётся в описательном файле) |
{profile_name} |
Имя текущего профиля настроек модуля |
{root_dir} |
Корневой каталог Open Server Panel (полный путь) |
{root_drive} |
Диск корневого каталога |
{root_path} |
Путь к корневому каталогу Open Server Panel |
В файлах-шаблонах можно использовать следующие шаблонные переменные:
Переменная | Описание |
---|---|
{module_name} |
Имя модуля |
{profile_name} |
Имя текущего профиля настроек модуля |
{root_dir} |
Корневой каталог Open Server Panel (полный путь) |
{root_drive} |
Диск корневого каталога |
{root_path} |
Путь к корневому каталогу Open Server Panel |
Особые переменные | (только если заданы в секции [main] ) |
{ip} |
IP-адрес(а) модуля |
{port} |
Порт модуля |
{log_level} |
Уровень журналирования |
{query_log_level} |
Уровень журналирования запросов |
{shell_command} |
Команда запуска shell/cli оболочки модуля |
{terminal_codepage} |
Кодировка консоли |
{time_zone} |
Часовой пояс в формате Etc/GMT
|
Служебные переменные | (только для разработчиков модулей) |
{apache_hosts} |
Блок конфигурации хостов для Apache |
{api_domain} |
Домен API |
{cmd_api_url} |
URL API для интерфейса командной строки |
{environment} |
Блок формирования среды модуля (формат Batch-скрипта) |
{lang_N} |
Текстовая строка с номером N из языкового файла (текущий язык) |
{nginx_hosts} |
Блок конфигурации хостов для Nginx |
{osp_version} |
Версия Open Server Panel |
{parent_module} |
Родительский модуль (задаётся в описательном файле) |
{web_api_url} |
URL API для веб-интерфейса |
{web_panel_url} |
URL веб-интерфейса |
{windows_environment} |
Среда Windows (оригинальная, сформированная при запуске Open Server Panel) |
Помимо шаблонных переменных, можно использовать переменные среды Windows, например: %SYSTEMROOT%
, %SYSTEMDRIVE%
, %USERNAME%
, %PATH%
и т.д.
В этой секции описывается требуемая модулю конфигурация системных служб.
- Назначение: Проверка состояния служб Windows перед запуском модуля.
- Управление службами: Эта секция не управляет состоянием служб.
Пример:
[services]
Dhcp = on
EMDMgmt = off
SysMain = on
Чтобы создать новый профиль настроек модуля:
-
Скопируйте существующий профиль: Скопируйте каталог существующего профиля (например,
.\config\<имя_модуля>\Default
) в новый каталог (например,.\config\<имя_модуля>\MyProfile
). -
Скопируйте данные (если есть): Если модуль использует данные из каталога
.\data
, скопируйте каталог данных существующего профиля (например,.\data\<имя_модуля>\Default
) в новый каталог (например,.\data\<имя_модуля>\MyProfile
). -
Использование оригинальных настроек и данных: Вместо копирования существующего профиля можно использовать оригинальные настройки и данные модуля из каталогов
.\modules\<имя_модуля>\ospanel_data\default
и.\modules\<имя_модуля>\ospanel_data\default_data
соответственно. - Перезапустите Open Server Panel
-
Разрешенные символы в имени профиля:
A-Za-z0-9-+_.
-
Преимущества дополнительных профилей:
- Тестирование новых конфигураций
- Эксперименты с настройками
Каждое дополнение Open Server Panel имеет следующую минимальную файловую структуру:
.
├── data
│ └── <имя_дополнения> # Каталог данных дополнения (необязательный)
└── addons
└── <имя_дополнения> # Основной каталог дополнения
└── ospanel_data # Служебные файлы (настройки и конфигурация)
├── templates # Каталог шаблонов
├── addon.ini # Описательный файл дополнения
├── menu.ini # Файл настроек меню дополнения (дополнительные пункты)
└── lang # Каталог языковых файлов (English.ini, Russian.ini и т.д.)
-
Создайте структуру каталогов: Создайте каталоги, как показано в примере выше.
-
Скопируйте файлы дополнения: Поместите содержимое вашего дополнения в каталог
.\addons\<имя_дополнения>
. Например, если вы устанавливаете дополнение MongoDB Tools, распакуйте его дистрибутив (ZIP-архив) в этот каталог. -
Языковые файлы (необязательно):
-
Расположение:
.\addons\<имя_дополнения>\ospanel_data\lang
-
Содержимое: Константы дополнения в секции
[main]
. -
Уникальный префикс: Используйте уникальный префикс в именах констант (например,
myaddon_...
).
-
Расположение:
-
Дополнительное меню (необязательно):
-
Расположение:
.\addons\<имя_дополнения>\ospanel_data\menu.ini
- Уникальные ID: Используйте уникальные ID для секций. Рекомендуется использовать префикс, равный имени дополнения.
-
Расположение:
-
Шаблоны файлов конфигурации:
-
Расположение:
.\addons\<имя_дополнения>\ospanel_data\templates
-
Расположение:
-
Описательный файл:
-
Расположение:
.\addons\<имя_дополнения>\ospanel_data\addon.ini
-
Формат: INI-файл
-
Секция
[main]
с параметрами:Параметр Описание architecture
Архитектура дополнения: x64
илиx86
category
Категория дополнения (можно использовать существующие категории или создать новую) enabled
Включить или выключить дополнение: yes
илиno
license
Ссылка на лицензию дополнения license_type
Тип лицензии дополнения min_windows_ver
Минимальная поддерживаемая версия Windows (см. таблицу ниже) timestamp
Временная метка релиза дополнения version
Версия дополнения -
Минимальная версия Windows:
Номер версии Версия Windows 6.1.7601
Windows 7 SP1 6.2.9200
Windows 8 6.3.9600
Windows 8.1 10.0.10240
Windows 10 1507 10.0.10586
Windows 10 1511 10.0.14393
Windows 10 1607 10.0.15063
Windows 10 1703 10.0.16299
Windows 10 1709 10.0.17134
Windows 10 1803 10.0.17763
Windows 10 1809 10.0.18362
Windows 10 1903 10.0.18363
Windows 10 1909 10.0.19041
Windows 10 2004 10.0.19042
Windows 10 20H2 10.0.19043
Windows 10 21H1 10.0.19044
Windows 10 21H2 10.0.19045
Windows 10 22H2 10.0.22000
Windows 11 21H2 10.0.22621
Windows 11 22H2
-
-
Перезапустите Open Server Panel.
Чтобы подробнее ознакомиться с устройством дополнений, вы можете изучить структуру и конфигурационные файлы любого из установленных дополнений.
Каждый модуль Open Server Panel имеет следующую минимальную файловую структуру:
.
├── data
│ └── <имя_модуля> # Каталог данных модуля (необязательный)
└── modules
└── <имя_модуля> # Основной каталог модуля
└── ospanel_data # Служебные файлы (исходники настроек и конфигураций)
├── default # Каталог исходного профиля
│ ├── settings.ini # Файл настроек модуля
│ └── templates # Каталог шаблонов
├── default_data # Каталог данных исходного профиля (необязательный)
├── module.ini # Описательный файл модуля
├── menu.ini # Файл настроек меню модуля (дополнительные пункты)
└── lang # Каталог языковых файлов (English.ini, Russian.ini и т.д.)
- Создайте структуру каталогов: Создайте каталоги, как показано в примере выше.
-
Языковые файлы (необязательно):
-
Расположение:
.\modules\<имя_модуля>\ospanel_data\lang
-
Содержимое: Константы модуля в секции
[main]
. -
Уникальный префикс: Используйте уникальный префикс в именах констант (например,
mymod_...
).
-
Расположение:
-
Дополнительное меню (необязательно):
-
Расположение:
.\modules\<имя_модуля>\ospanel_data\menu.ini
- Уникальные ID: Используйте уникальные ID для секций. Рекомендуется использовать префикс, равный имени модуля.
-
Расположение:
-
Файл настроек:
-
Расположение:
.\modules\<имя_модуля>\ospanel_data\default\settings.ini
-
Расположение:
-
Шаблоны файлов конфигурации:
-
Расположение:
.\modules\<имя_модуля>\ospanel_data\default\templates
-
Расположение:
-
Исходные данные (необязательно):
-
Расположение:
.\modules\<имя_модуля>\ospanel_data\default_data
(например, базы данных)
-
Расположение:
-
Описательный файл:
-
Расположение:
.\modules\<имя_модуля>\ospanel_data\module.ini
-
Формат: INI-файл
-
Секция
[main]
с параметрами:Параметр Описание architecture
Архитектура модуля: x64
илиx86
category
Категория модуля (можно использовать существующие категории или создать новую) exclusive
Эксклюзивный запуск (только один модуль этой категории может быть включен): yes
илиno
fast_start
Быстрый запуск модуля (без ожидания инициализации консоли): yes
илиno
fast_stop
Быстрая остановка модуля (принудительное завершение процесса): yes
илиno
ipv6_support
Поддержка IPv6: yes
илиno
ip_separator
Разделитель IP-адресов в конфигурации модуля (если поддерживается несколько IP-адресов) kill_names
Список процессов для принудительного завершения, если модуль не может остановить их самостоятельно (например, epmd.exe test.exe
)license
Ссылка на лицензию модуля license_type
Тип лицензии модуля min_windows_ver
Минимальная поддерживаемая версия Windows (см. таблицу ниже) timestamp
Временная метка релиза модуля version
Версия модуля -
Минимальная версия Windows:
Номер версии Версия Windows 6.1.7601
Windows 7 SP1 6.2.9200
Windows 8 6.3.9600
Windows 8.1 10.0.10240
Windows 10 1507 10.0.10586
Windows 10 1511 10.0.14393
Windows 10 1607 10.0.15063
Windows 10 1703 10.0.16299
Windows 10 1709 10.0.17134
Windows 10 1803 10.0.17763
Windows 10 1809 10.0.18362
Windows 10 1903 10.0.18363
Windows 10 1909 10.0.19041
Windows 10 2004 10.0.19042
Windows 10 20H2 10.0.19043
Windows 10 21H1 10.0.19044
Windows 10 21H2 10.0.19045
Windows 10 22H2 10.0.22000
Windows 11 21H2 10.0.22621
Windows 11 22H2
-
-
Копирование настроек и данных:
-
Настройки: Создайте каталог
.\config\<имя_модуля>\default
и скопируйте в него содержимое каталога.\modules\<имя_модуля>\ospanel_data\default
. -
Данные: Создайте каталог
.\data\<имя_модуля>\default
и скопируйте в него содержимое каталога.\modules\<имя_модуля>\ospanel_data\default_data
(если есть).
-
Настройки: Создайте каталог
- Перезапустите Open Server Panel.
Caution
Не используйте каталоги .\modules\<имя_модуля>\ospanel_data\default
и .\modules\<имя_модуля>\ospanel_data\default_data
для работы с модулем. Эти каталоги хранят исходный профиль и используются для восстановления настроек модуля.
Для включения расширения Imagick, например для PHP 8.1, выполните следующие шаги:
-
Откройте конфигурационный файл PHP 8.1:
Перейдите в каталог с шаблонами настроек PHP 8.1:
.\config\PHP-8.1\default\templates\php.ini
-
Редактирование
php.ini
:Откройте файл
php.ini
в текстовом редакторе (например, Notepad++ или VS Code).Найдите строку, содержащую
imagick
, и убедитесь, что она не закомментирована (без точки с запятой в начале строки):extension = imagick
-
Установите дополнение ImageMagick (опционально):
Установите компонент ImageMagick, если он не был выбран при первоначальной установке Open Server Panel. Для этого повторно запустите установщик Open Server Panel, снимите отметки со всех компонентов и выберите только ImageMagick.
-
Перезапуск Open Server Panel:
После внесения изменений перезапустите Open Server Panel. Для этого:
- Щёлкните правой кнопкой мыши на значок Open Server Panel в области уведомлений.
- Выберите Перезапустить.
-
Проверка работы Imagick:
Чтобы убедиться, что Imagick включён и работает, создайте файл
info.php
в корневом каталоге вашего веб-проекта с содержимым:<?php phpinfo(); ?>
Откройте этот файл в браузере (например,
http://example.local/info.php
) и найдите секцию Imagick в выведенной информации. Если Imagick включён, вы увидите информацию о поддерживаемых форматах в строке напротив ImageMagick supported formats.
После этих шагов расширение Imagick должно быть успешно активировано для PHP 8.1 в Open Server Panel.
Для включения расширения OCI8, например для PHP 8.1, выполните следующие шаги:
-
Откройте конфигурационный файл PHP 8.1:
Перейдите в каталог с шаблонами настроек PHP 8.1:
.\config\PHP-8.1\default\templates\php.ini
-
Редактирование
php.ini
:Откройте файл
php.ini
в текстовом редакторе (например, Notepad++ или VS Code).Найдите строку, содержащую
oci8
, и убедитесь, что она не закомментирована (без точки с запятой в начале строки):;extension = oci8 ;extension = oci8_11g ;extension = oci8_12c extension = oci8_19
Активируйте расширение только той версии, которая вам необходима! Запрещается активировать более одного расширения OCI8 одновременно.
-
Установите дополнение Oracle Instant Client (опционально):
Установите компонент Oracle Instant Client, если он не был выбран при первоначальной установке Open Server Panel. Для этого повторно запустите установщик Open Server Panel, снимите отметки со всех компонентов и выберите только Oracle Instant Client.
-
Редактирование
settings.ini
:Откройте файл
config\PHP-8.1\default\settings.ini
в текстовом редакторе (например, Notepad++ или VS Code).Найдите строку, содержащую
used_addons_environment
, и добавьте в список подключаемых компонентов Instant Client:Было:
used_addons_environment = FFMpeg Ghostscript ImageMagick-vs16
Стало:
used_addons_environment = FFMpeg Ghostscript ImageMagick-vs16 InstantClient
-
Перезапуск Open Server Panel:
После внесения изменений перезапустите Open Server Panel. Для этого:
- Щёлкните правой кнопкой мыши на значок Open Server Panel в области уведомлений.
- Выберите Перезапустить.
-
Копирование файлов конфигурации клиента Oracle:
Скопируйте файлы конфигурации
tnsnames.ora
,sqlnet.ora
,ldap.ora
,oraaccess.xml
, полученные от своего работодателя, в каталог\addons\InstantClient\network\admin
. -
Драйвер ODBC: При необходимости установите драйвер ODBC с помощью файла
addons\InstantClient\odbc_install.exe
. -
Проверка работы OCI8:
Чтобы убедиться, что OCI8 включён и работает, создайте файл
info.php
в корневом каталоге вашего веб-проекта с содержимым:<?php phpinfo(); ?>
Откройте этот файл в браузере (например,
http://example.local/info.php
) и найдите секцию OCI8 в выведенной информации. Если OCI8 включён корректно, вы увидите информацию о версии Instant Client в строке напротив Oracle Run-time Client Library Version.
После этих шагов расширение OCI8 должно быть успешно активировано для PHP 8.1 в Open Server Panel.
Для включения расширения XDebug, например для PHP 8.1, выполните следующие шаги:
-
Откройте конфигурационный файл PHP 8.1:
Перейдите в каталог с шаблонами настроек PHP 8.1:
.\config\PHP-8.1\default\templates\php.ini
-
Редактирование
php.ini
:Откройте файл
php.ini
в текстовом редакторе (например, Notepad++ или VS Code).Найдите строку, содержащую
xdebug
, и убедитесь, что она не закомментирована (без точки с запятой в начале строки):zend_extension = xdebug
-
Настройте параметры XDebug (опционально):
Это пример базовой конфигурации:
[xdebug] xdebug.mode = debug xdebug.start_with_request = yes xdebug.client_host = "localhost" xdebug.client_port = 9003
Вы можете настроить параметры в соответствии с вашими потребностями.
-
Перезапуск Open Server Panel:
После внесения изменений в
php.ini
перезапустите модуль PHP, чтобы применить новые настройки. Для этого:- Щёлкните правой кнопкой мыши на значок Open Server Panel в области уведомлений.
- Выберите необходимый модуль и нажмите Перезапустить.
-
Проверка работы XDebug:
Чтобы убедиться, что XDebug включён и работает, создайте файл
info.php
в корневом каталоге вашего веб-проекта с содержимым:<?php phpinfo(); ?>
Откройте этот файл в браузере (например,
http://example.local/info.php
) и найдите секцию XDebug в выведенной информации. Если XDebug включён и настроен правильно, вы увидите информацию о XDebug.
После этих шагов расширение XDebug должно быть успешно активировано для PHP 8.1 в Open Server Panel.
Каждый пользователь самостоятельно решает, какой инструмент использовать для управления базами данных.
Вы можете установить любой подходящий инструмент, например:
-
Adminer
- Поддерживаемые базы данных: MySQL, MariaDB, PostgreSQL, SQLite, MS SQL, Oracle, Elasticsearch, MongoDB.
- Особенности: Легкий и быстрый веб-интерфейс, поддержка множества баз данных, расширяемость через плагины.
- Скачать с официального сайта
-
Another Redis Desktop Manager
- Поддерживаемые базы данных: Redis.
- Особенности: Быстрый и стабильный десктопный клиент для Redis, кроссплатформенность (Linux, Windows, Mac).
- Скачать с официального сайта
-
Antares SQL
- Поддерживаемые базы данных: MySQL, PostgreSQL, SQLite, и другие.
- Особенности: Современный интерфейс, поддержка вкладок, автодополнение SQL, интеграция с другими инструментами.
- Скачать с официального сайта
-
DBeaver
- Поддерживаемые базы данных: MySQL, MariaDB, PostgreSQL, SQLite, Oracle, SQL Server, DB2, Apache Family (Cassandra, Hive, и др.), MongoDB, Redis, и другие.
- Особенности: Кроссплатформенность, поддержка ER-диаграмм, редактор данных и SQL, экспорт и импорт данных.
- Скачать с официального сайта
-
DbGate
- Поддерживаемые базы данных: MySQL, PostgreSQL, SQL Server, MongoDB и другие.
- Особенности: Веб-ориентированный интерфейс, поддержка вкладок, редактор SQL, поддержка MongoDB.
- Скачать с официального сайта
-
DbVisualizer
- Поддерживаемые базы данных: MySQL, PostgreSQL, Oracle, SQL Server, SQLite, и другие через JDBC.
- Особенности: Кроссплатформенность, удобный графический интерфейс, поддержка множества баз данных через JDBC, инструменты для анализа данных.
- Скачать с официального сайта
-
DB Browser for SQLite
- Поддерживаемые базы данных: SQLite.
- Особенности: Легкий интерфейс для работы с SQLite базами данных, создание и редактирование таблиц, выполнение SQL-запросов.
- Скачать с официального сайта
-
HeidiSQL
- Поддерживаемые базы данных: MariaDB, MySQL, MSSQL, PostgreSQL, SQLite, Interbase/Firebird.
- Особенности: Легкий и быстрый интерфейс, поддержка SSH-туннелей, экспорт и импорт данных.
- Скачать с официального сайта
-
MongoDB Compass
- Поддерживаемые базы данных: MongoDB.
- Особенности: Официальный GUI от MongoDB; визуальный просмотр коллекций и документов, конструктор запросов, агрегирования (Aggregation Pipeline Builder), валидация схем (Schema Validation), индексы, профилирование производительности, подключение через SSH/SSL.
- Скачать с официального сайта
-
MySQL Workbench
- Поддерживаемые базы данных: MySQL, MariaDB.
- Особенности: Инструменты для проектирования схем баз данных (ER-диаграммы), редактор SQL-запросов, визуальное моделирование данных, администрирование серверов MySQL, создание и управление пользователями, экспорт и импорт данных.
- Скачать с официального сайта
-
NoSQLBooster for MongoDB (бесплатная версия)
- Поддерживаемые базы данных: MongoDB.
- Особенности: Редактор и выполнение запросов для MongoDB, автодополнение, визуализация данных, поддержка JavaScript.
- Скачать с официального сайта
-
pgAdmin
- Поддерживаемые базы данных: PostgreSQL.
- Особенности: Полнофункциональное управление PostgreSQL, поддержка SQL-редактирования, управление пользователями и привилегиями, визуализация данных.
- Скачать с официального сайта
-
PHPMyAdmin
- Поддерживаемые базы данных: MySQL, MariaDB.
- Особенности: Веб-интерфейс, удобное управление базами данных через браузер, поддержка множества языков.
- Скачать с официального сайта
-
SQL Workbench/J
- Поддерживаемые базы данных: MySQL, PostgreSQL, SQL Server, Oracle, и другие через JDBC.
- Особенности: Кроссплатформенность, поддержка сценариев SQL, экспорт и импорт данных, редактор запросов.
- Скачать с официального сайта
-
SQuirreL SQL
- Поддерживаемые базы данных: MySQL, PostgreSQL, Oracle, SQL Server, DB2, SQLite и другие через JDBC.
- Особенности: Кроссплатформенность, графический интерфейс, поддержка множества баз данных через JDBC, расширяемость через плагины.
- Скачать с официального сайта
-
SQLyog Community Edition
- Поддерживаемые базы данных: MySQL, MariaDB.
- Особенности: Интуитивно понятный графический интерфейс, инструменты для управления данными и структурой базы данных, экспорт и импорт данных.
- Скачать с официального сайта
Эти программы предоставляют широкий спектр возможностей для управления базами данных и подходят для различных задач — от простого редактирования данных до сложного анализа и визуализации. Мы рекомендуем выбирать инструмент, который наилучшим образом соответствует вашим требованиям и предпочтениям. Инструкции по установке и настройке можно найти на официальных сайтах этих инструментов.
Давайте рассмотрим пример редактирования шаблона httpd.conf
для модуля Apache:
- Перейдите в папку установки Open Server Panel (например,
C:\OSPanel
). - Перейдите в
config\Apache\default\templates
. - Найдите файл
httpd.conf
.
- Откройте
httpd.conf
в текстовом редакторе (например, Notepad++). - Внесите необходимые изменения.
- Сохраните файл.
- Перезапустите модуль с помощью меню программы или консольной команды
osp restart apache
- Убедитесь, что модуль запускается без ошибок.
Теперь вы успешно отредактировали конфигурацию Apache в Open Server Panel 6.
Требование: Open Server Panel должен быть установлен стационарно (не портативно).
Если Open Server Panel установлен портативно, обязательно добавьте путь к подкаталогу \bin
каталога установки Open Server в переменную окружения PATH (см. инструкцию).
Вы можете изменить настройки терминала одним из двух способов:
- Откройте VS Code.
- Перейдите в настройки:
НажмитеCtrl + ,
или выберите в меню File → Preferences → Settings. - В правом верхнем углу окна настроек нажмите на иконку с листом и карандашом (Open Settings (JSON)) — откроется файл
settings.json
(он создастся, если его нет).
- Откройте проводник и перейдите в папку:
C:\Users\<ВАШЕ_ИМЯ_ПОЛЬЗОВАТЕЛЯ>\AppData\Roaming\Code\User\
- Если файла
settings.json
нет — создайте его (правый клик → Создать → Текстовый документ → переименуйте вsettings.json
). - Откройте этот файл в любом редакторе (например, в VS Code).
Дальнейшие шаги для обоих способов:
-
Вставьте в открытый
settings.json
следующий код (см. пункт Важно):{ "terminal.integrated.defaultProfile.windows": "OSPanel", "terminal.integrated.profiles.windows": { "OSPanel": { "path": "C:\\Windows\\System32\\cmd.exe", "args": ["/k", "osp project auto"] } } }
-
Сохраните файл и перезапустите VS Code.
- Если в файле уже есть другие настройки, просто добавьте или измените только нужные строки (
terminal.integrated.*
), а не стирайте все остальные. - Если вы работаете со сторонними проектами вне среды Open Server Panel и не хотите видеть ошибку при запуске терминала, когда среда проекта не обнаружена, замените строку:
"args": ["/k", "osp project auto"]
на"args": ["/k", "osp project auto 2>nul"]
. - После изменений обязательно перезапустите VS Code.
Готово! Теперь откройте папку с проектом и запустите терминал. Для вызова терминала используйте Ctrl + `
или выберите пункт меню Terminal → New Terminal.
Требование: Open Server Panel должен быть установлен стационарно (не портативно).
Если Open Server Panel установлен портативно, обязательно добавьте путь к подкаталогу \bin
каталога установки Open Server в переменную окружения PATH (см. инструкцию).
- Откройте PhpStorm.
- Перейдите в меню:
File → Settings (илиCtrl + Alt + S
). - В открывшемся окне слева выберите:
Tools → Terminal. - Найдите поле Shell path (Путь к оболочке).
- Укажите туда следующую строку:
cmd.exe /k "osp project auto"
- Нажмите OK или Apply, чтобы сохранить настройки.
- Если вы работаете со сторонними проектами вне среды Open Server Panel и не хотите видеть ошибку при запуске терминала, когда среда проекта не обнаружена, замените строку:
cmd.exe /k "osp project auto"
наcmd.exe /k "osp project auto 2>nul"
. - Если что-то не работает, попробуйте полностью перезапустить PhpStorm.
Готово! Теперь откройте папку с проектом и запустите терминал. Для вызова терминала используйте Alt + F12
или выберите пункт меню View → Tool Windows → Terminal.
- Найдите папку, в которую установлен Open Server Panel (например,
C:\OSPanel
). - Перейдите в подкаталог
bin
внутри этой папки (например,C:\OSPanel\bin
). - Скопируйте путь к папке
bin
. - Откройте настройки переменных среды Windows:
- Кликните правой кнопкой мыши по значку Этот компьютер → Свойства.
- Выберите Дополнительные параметры системы → Переменные среды.
- В разделе Системные переменные найдите переменную Path и выберите Изменить.
- Добавьте скопированный путь к
bin
в новый рядок, нажмите OK.
- Перезапустите компьютер, чтобы изменения вступили в силу.
Зачем это нужно: Если Open Server Panel установлен портативно, команда osp
(и другие утилиты OSPanel) недоступны из терминала в различных IDE без добавления пути к bin
в переменную среды PATH.