Что должно быть в .env
- DB_HOST
- DB_NAME
- DB_USER
- DB_PASS
- APP_API_KEY
- PANEL_HOST
Права на файлы
Есть 2 способа выдать доступ к файлам:
1. Обычный способ: chgrp + chmod
Подходит, если вас устраивает смена группы у файлов.
Для просмотра файлов достаточно прав на чтение каталога:
sudo chgrp -R www-data /var/lib/pterodactyl/volumes
sudo chmod -R g+rx /var/lib/pterodactyl/volumes
Если нужны загрузка, редактирование, удаление и восстановление файлов:
sudo chgrp -R www-data /var/lib/pterodactyl/volumes
sudo chmod -R g+rwx /var/lib/pterodactyl/volumes
find /var/lib/pterodactyl/volumes -type d -exec sudo chmod g+s {} ;
Этот способ меняет группу у файлов и папок.
2. Рекомендуемый способ: setfacl
Подходит, если не хотите менять владельца и группу файлов Pterodactyl.
setfacl не меняет владельца и группу, а просто добавляет нужные права для пользователя веб-сервера.
Вариант через ACL:
sudo setfacl -R -m u:www-data:rwx /var/lib/pterodactyl/volumes
sudo setfacl -R -d -m u:www-data:rwx /var/lib/pterodactyl/volumes
Если setfacl не установлен:
sudo apt-get update
sudo apt-get install -y acl
Если у вас не www-data, замените его на пользователя PHP-FPM или веб-сервера.
Готовые примеры
Apache
Ubuntu / Debian:
sudo chgrp -R www-data /var/lib/pterodactyl/volumes
sudo chmod -R g+rwx /var/lib/pterodactyl/volumes
Или через ACL:
sudo setfacl -R -m u:www-data:rwx /var/lib/pterodactyl/volumes
sudo setfacl -R -d -m u:www-data:rwx /var/lib/pterodactyl/volumes
CentOS / AlmaLinux / Rocky:
sudo chgrp -R apache /var/lib/pterodactyl/volumes
sudo chmod -R g+rwx /var/lib/pterodactyl/volumes
Или через ACL:
sudo setfacl -R -m u:apache:rwx /var/lib/pterodactyl/volumes
sudo setfacl -R -d -m u:apache:rwx /var/lib/pterodactyl/volumes
Nginx
Если используется Ubuntu / Debian (обычно www-data):
sudo chgrp -R www-data /var/lib/pterodactyl/volumes
sudo chmod -R g+rwx /var/lib/pterodactyl/volumes
Или через ACL:
sudo setfacl -R -m u:www-data:rwx /var/lib/pterodactyl/volumes
sudo setfacl -R -d -m u:www-data:rwx /var/lib/pterodactyl/volumes
Если используется пользователь nginx:
sudo chgrp -R nginx /var/lib/pterodactyl/volumes
sudo chmod -R g+rwx /var/lib/pterodactyl/volumes
Или через ACL:
sudo setfacl -R -m u:nginx:rwx /var/lib/pterodactyl/volumes
sudo setfacl -R -d -m u:nginx:rwx /var/lib/pterodactyl/volumes
Права на корзину
Менеджер должен иметь доступ к папке:
pages/file_manager/trash_storage
Пример:
sudo mkdir -p /path/to/site/pages/file_manager/trash_storage
sudo chown -R www-data:www-data /path/to/site/pages/file_manager/trash_storage
sudo chmod -R 775 /path/to/site/pages/file_manager/trash_storage
Если нет доступа
Проверьте:
- Права на /var/lib/pterodactyl/volumes/
- Права на trash_storage
- Под каким пользователем работает PHP
- Если не хотите менять группу — используйте setfacl
Команда для проверки:
ps aux | egrep 'php-fpm|apache|nginx'
Что создается автоматически
Если таблиц нет, менеджер создаст:
- users
- activity_logs
- app_settings
- trash_files
Если таблица users пустая, создаётся пользователь:
- логин: admin
- роль: admin
- пароль: admin
Дебаг
Включается через параметр в URL:
?debug=1
Что это даёт:
- debug-сообщения в консоли браузера
- backend-ошибки пишутся в PHP log через error_log
Примеры:
/file_manager/index.php?debug=1
/file_manager/admin.php?debug=1