Новая версия OSpanel 6 была полностью переписана с нуля и использует совершенно новый подход к настройке, поэтому с большей вероятностью мануалы старых версий не помогут.
Скачать
По этой ссылке - https://ospanel.io/download/
Установка
Запускаем скачанный файл. В процессе установки ничего особого не будет, за исключение выбора модулей - можно выбрать только те, которые нужны. Все остальное можно оставить неизменным и нажимать "Далее". В конце установки будет предложено установить сертификат SSL от open server. Можно нажать "Да", но нужно имет ьв виду, что подобные сертификаты не все браузеры устанавливают, например, в Mozilla его потребуется поставить вручную.
После установки OSPanel и доп. программ, перезагружаем компьютер. После этого в трее появится значок
Настройка
Расположение проектов по умолчанию в директории OSPanel/home
.
Чтобы OSPanel узнал о проектах, нужно добавить в проект папку .osp
и положить в нее файл project.ini
. В нем нужно прпоисать имя домена в квадратных скобках, например [project.loc], а также прописываем версию PHP и по необходимости публичную папку.
Пример конфига home/project.loc/.osp/project.ini
:
[api.home-portal.prod]
php_engine = PHP-8.3
public_dir = {base_dir}/public
nginx_engine = Nginx-1.26
Перезагружаем сервер.
Настройки, которые, помимо домена, поддерижвает файл project.ini:
Настройка | Описание | Пример |
php_engine | Версия PHP | PHP-8.3 |
public_dir | Публичная директория | Например, приложения на Laravel запускаются из папки public, тогда значение будет {base_dir}/public |
Доступны следующие шаблонные переменные:
Переменная | Описание |
{base_dir} | Корневой каталог проекта (местонахождение служебного каталога .osp) |
{host} | Имя домена (для интернационализованных доменов формат Punycode используется) |
{host_decoded} | Видимое имя домена (для интернационализованных доменов формат Punycode не используется) |
{root_dir} | Корневой каталог программы (полный путь) |
{root_drive} | Диск корневого каталога |
{root_path} | Путь к корневому каталогу программы |
Это пока основное, что может потребоваться в запуске проектов.
Настройка дополнительных доменов
Чтобы добавить домены на проект (например, если у нас АПИ и клиент на одном проекте), нужно просто добавить секции с квадратными скобками в файл .osp/project.ini:
[api.home-portal.prod]
php_engine = PHP-8.3
public_dir = {base_dir}/public
nginx_engine = Nginx-1.26
[home-portal.prod]
public_dir = {base_dir}/client
nginx_engine = Nginx-1.26
Ручная настройка конфига nginx или apache:
Нужно добавить в папку .osp
папку Apache или Nginx соответственно и в ней создать файл с именем домена, например, project.loc.conf
.
В конфиге прописать соответтвующие директивы для нужного веб-сервера.
Важно! Конфиг нужно писать с учетом того, что он уже заключен в тег VirtualHost
apache или server{}
nginx.
Пример конфига на nginx, допустим, чтобы перенаправлять запросы с сервера на приложение:
location / {
try_files $uri $uri/ /index.html;
}
Запуск
Чтобы запустить проект, нужно включить необходимые модули, например, PHP, Apache и Mysql. Делаем это из трея (На примере PHP) - пр. клавишей по OSPanel -> Модули -> PHP -> PHP-8.3 -> Включить. Важно использовать версию PHP не Fast CGI.
Примечание. Включаем версию PHP, которую указали в конфиге папки .osp.
Подключение базы данных:
- server: MySQL-8.2 (Версию можно писать как mysql-8.2 или mysql-8.2.local)
- user: root
- password: (Пустой)
Возможные проблемы
Если вы делаете API, например, на Laravel то может возникнуть такая проблема, что все запросы с фронта будут блочиться по CORS. Тут проблема в том, что ко всем запросам проверку по заголовку "Access-Control-Allow-Origin" делает еще и apache.
Чтобы это исправить, открываем файл E:\server\config\PHP-8.3\default\templates\httpd.conf, ищем там строчку по "Access-Control-Allow-Origin" и удаляем ее. Она будет вот в этом блоке: