Debian 9 (Stretch)
Важно! В Debian 9 автоустановщик VestaCP ставит стандартную версию дистрибутива — PHP 7.0. Минимальная версия для работы панели выше — 7.2. В процессе установки GameAP версия PHP будет автоматически обновлена.
Добавление хоста в VestaCP
Первым дело добавляем в VestaCP новый веб домен. В верхнем меню перейдите в "WEB", затем справа нажмите на плюсик "Add web domain".
В поле Domain введите домен, на котором у вас будет стоять панель, например gameap.example.com
.
В качестве IP укажите тот, к которому прикреплён домен.
Создание базы данных в VestaCP для GameAP
Теперь в VestaCP создайте новую базу данны для панели. В верхнем меню перейдите в "DB", затем справа нажмите на плюсик "Add database"
Установка GameAP
Затем устанавливаем GameAP выполняя скрипт автоустановки:
curl -sLO http://packages.gameap.ru/installer.sh && bash installer.sh
Путь указываем /home/admin/web/gameap.example.com/gameap
.
Важно! Обратите внимание, что в пути есть имя пользователя, скорее всего это admin, но возможно и другое. Если имя пользователя другое, то в пути измените имя на /home/<тут_имя_пользователя>/web/gameap.example.com/gameap
Базу данных указываем MySQL.
Веб сервер None
В процессе установки, будет обнаружена MySQL база и автоустановщик спросит у вас пароль от базы данных, вам нужно ввести эти данные:
Важно! Обратите внимание на префикс admin_
в названии базы данных и имени пользователя. Это префикс имени пользователя в VestaCP, обычно он admin_
, но может быть и другим. Если вы укажете неверные логин и пароль к базе, то панель не установится.
Спустя некоторое время, в случае успешной установки GameAP вы увидите примерно следующую информацию в терминале:
Если вы перейдёте по адресу вашего домена gameap.example.com
, то увидите стандартную страницу для новых хостов VestaCP.
Всё в порядке, просто нужно настроить виртуальный хост Apache, об этом будет дальше.
Права на файлы и удаление файла .htaccess из корня панели
По умолчанию автоустановщик GameAP устанавливает владельцем файлов пользователя www-data
, нужно изменить на своего, в нашем случае это admin
.
chown -R admin:admin /home/admin/web/gameap.example.com
Чтобы не было ошибки 500 и в логах Apache не сыпались ошибки /home/admin/web/gameap.example.com/gameap/.htaccess: <IfModule not allowed here
, нужно удалить файл .htaccess:
rm /home/admin/web/gameap.example.com/gameap/.htaccess
Настройка Apache
Если вы дошли до этого пункта, то замечательно, осталось совсем немного.
Вам нужно обновить версию PHP в Apache до 7.4 и подправить настройки хоста.
Обновляем версию PHP до 7.4
Устанавливаем PHP 7.4 мод для Apache:
apt install libapache2-mod-php7.4
Отключаем PHP 7.0 и включаем PHP 7.4
a2dismod php7.0
a2enmod php7.4
Конфигурирование виртуального хоста GameAP в Apache
Нужно узнать расположение конфигурации виртуального хоста gameap.example.com
, для этого нужно выполнить команду:
apache2ctl -S
В данном случае он расположен в /home/admin/conf/web/gameap.example.com.apache2.conf
.
Открываем файл:
Красным помечены параметры, которые нужно изменить.
Значение DocumentRoot меняем на /home/admin/web/gameap.example.com/gameap/public
Значение Directory меняем на /home/admin/web/gameap.example.com/gameap/public
...
DocumentRoot /home/admin/web/gameap.example.com/gameap/public
...
<Directory /home/admin/web/gameap.example.com/gameap/public>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
Require all granted
</Directory>
....
В итоге должно получиться вот так:
Перезагружаем Apache:
systemctl restart apache2
Осталось зайти по нашему домену gameap.example.com
и увидеть приглашение ко входу в панель.
Если что-то пошло не так
В любой непонятной ситуации смотрите логи в /home/admin/web/gameap.example.com/logs
, там скорее всего есть причина.
Ошибка 500
Скорее всего вы пропустили, что нужно изменить владельца для файлов панели и удалить файл .htaccess из корня панели.