Перейти к основному содержимому

Прохождение веб-установщика

FeedbackPulse SaaS включает красивый браузерный установщик. Командная строка не нужна (после первоначальной загрузки файлов и composer install).


Запуск установщика

Перейдите по адресу:

https://yourdomain.com/install

Установщик не отображается? Убедитесь, что:

  • Ваш веб-сервер указывает на директорию public/
  • Apache mod_rewrite включён (или Nginx настроен с правильным try_files)
  • Файл storage/installed.lock отсутствует (он блокирует установщик после первой установки)

Шаг 1: Приветствие и лицензия

Первый экран приветствует вас и запрашивает код покупки Envato/CodeCanyon.

Где найти код покупки:

  1. Войдите на CodeCanyon
  2. Перейдите в Downloads → найдите FeedbackPulse SaaS
  3. Нажмите DownloadLicense certificate and purchase code
  4. Код покупки выглядит так: a1b2c3d4-e5f6-7890-abcd-ef1234567890

Что происходит:

  • Проверяет вашу лицензию через API Envato
  • Подтверждает наличие легитимной копии
  • Разблокирует остальную часть установщика

Шаг 2: Проверка требований

Установщик автоматически сканирует ваш сервер и проверяет:

Версию PHP

  • Требуется PHP 8.4 или выше
  • Показывает вашу текущую версию PHP

Зависимости Vendor

  • Проверяет наличие vendor/autoload.php (зависимости Composer должны быть установлены или загружены)

Расширения PHP

Проверяются следующие:

  • pdo_mysql — подключение к базе данных
  • mbstring — обработка строк
  • openssl — шифрование
  • tokenizer — парсинг кода
  • xml — обработка XML
  • ctype — валидация символов
  • json — работа с JSON
  • bcmath — математические операции
  • fileinfo — определение типа файла
  • curl — API-вызовы

Права доступа к директориям

  • storage/ — должна быть доступна для записи
  • bootstrap/cache/ — должна быть доступна для записи

Отображение результатов

  • Зелёные галочки = требование выполнено
  • Красные крестики = требование НЕ выполнено (необходимо исправить перед продолжением)

Исправление неудачных проверок:

# Установить отсутствующие расширения PHP (Ubuntu)
sudo apt install php8.4-mysql php8.4-mbstring php8.4-xml php8.4-bcmath php8.4-curl php8.4-gd php8.4-zip

# Исправить права доступа
sudo chmod -R 775 storage bootstrap/cache
sudo chown -R www-data:www-data storage bootstrap/cache

# Перезапустить PHP
sudo systemctl restart php8.4-fpm

Шаг 3: Конфигурация базы данных

Введите данные подключения к MySQL/MariaDB:

ПолеПримерПримечания
Хост базы данных127.0.0.1Используйте 127.0.0.1 вместо localhost для надёжности
Порт базы данных3306Порт MySQL по умолчанию
Имя базы данныхfeedbackpulseБаза данных должна уже существовать!
Имя пользователяfeedbackpulse_userС полными привилегиями на базу данных
Парольyour_secure_passwordПароль пользователя

Перед этим шагом

Необходимо сначала создать базу данных:

-- Войти в MySQL
mysql -u root -p

-- Создать базу данных
CREATE DATABASE feedbackpulse CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- Создать выделенного пользователя (рекомендуется)
CREATE USER 'feedbackpulse_user'@'localhost' IDENTIFIED BY 'your_secure_password';
GRANT ALL PRIVILEGES ON feedbackpulse.* TO 'feedbackpulse_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Что происходит при нажатии «Setup Database»

  1. Установщик проверяет соединение
  2. Сохраняет учётные данные базы данных в файл .env
  3. Запускает все миграции базы данных (создаёт ~30 таблиц)
  4. Засевает данные по умолчанию:
    • 3 стандартных плана подписки (Starter, Growth, Pro)
    • Настройки платформы по умолчанию
  5. Показывает сообщение об успехе

Примечание: Во время установки драйверы сессий и кэша остаются file для стабильности. Они автоматически переключаются на database на шаге завершения.

Этот шаг может занять 10–30 секунд в зависимости от вашего сервера.


Шаг 4: Аккаунт администратора

Создайте аккаунт суперадмина:

ПолеПримерПримечания
Полное имяИван ИвановВаше отображаемое имя
Адрес email[email protected]Используется для входа и уведомлений
Пароль(надёжный пароль)Минимум 8 символов. Используйте надёжный пароль!
Подтверждение пароля(должно совпадать)Должно совпадать

Что происходит

  • Создаётся ваш аккаунт с role = superadmin
  • Это единственный аккаунт суперадмина, создаваемый автоматически
  • С ним вы будете входить по адресу /login и получать доступ к /admin/dashboard

Совет по безопасности: Используйте уникальный, надёжный пароль. Позже вы можете включить 2FA в Настройках.


Шаг 5: Конфигурация email

Настройте SMTP для отправки транзакционных писем:

ПолеПримерПримечания
SMTP-хостsmtp.gmail.comSMTP-сервер вашего поставщика email
SMTP-порт587587 для TLS, 465 для SSL
SMTP-имя пользователя[email protected]Обычно ваш адрес email
SMTP-парольyour_app_passwordРекомендуется пароль приложения
ШифрованиеtlsTLS (рекомендуется) или SSL
Адрес отправителя[email protected]Адрес «от кого» в исходящих письмах
Имя отправителяFeedbackPulseИмя «от кого» в исходящих письмах

Распространённые SMTP-провайдеры

ПровайдерХостПортШифрованиеПримечания
Gmailsmtp.gmail.com587TLSТребует пароль приложения (не обычный пароль)
Mailgunsmtp.mailgun.org587TLSОтлично для транзакционных писем
Amazon SESemail-smtp.{region}.amazonaws.com587TLSЭкономичен в масштабе
SendGridsmtp.sendgrid.net587TLSИспользуйте apikey в качестве имени пользователя
Postmarksmtp.postmarkapp.com587TLSЛучшая доставляемость
Mailtrapsandbox.smtp.mailtrap.io587TLSТолько для тестирования!

Нет возможности настроить email сейчас? Вы можете пропустить этот шаг и настроить его позже в Admin → Settings → Email. Платформа будет работать без email, но функции, такие как приглашения, дайджесты и сброс паролей, не будут работать.


Шаг 6: Установка завершена!

Вы увидите страницу успеха с информацией о:

  • Настроенной и мигрированной базе данных
  • Созданном аккаунте администратора
  • Настроенном email
  • Созданном файле installed.lock
  • Переключённых драйверах сессий и кэша на database
  • Автогенерированном CRON_TOKEN для веб-based cron
  • Уведомлении о shared-хостинге (если символическая ссылка не была создана)

Инструкции по cron-заданию (показаны на странице завершения)

На странице завершения отображаются два варианта настройки cron с командами для копирования:

  1. CLI-команда — для VPS/выделенных серверов:

    * * * * * cd /path/to/project && php artisan schedule:run >> /dev/null 2>&1
  2. URL/wget — для shared-хостинга (использует автогенерированный CRON_TOKEN):

    wget -q -O /dev/null "https://yourdomain.com/cron/run?token=YOUR_CRON_TOKEN"

Сохраните их! Скопируйте cron-команду со страницы завершения перед переходом на другую страницу. Ваш CRON_TOKEN также находится в файле .env.

Файл installed.lock

Установщик создаёт файл storage/installed.lock, чтобы предотвратить повторный запуск. Это мера безопасности.

Чтобы перезапустить установщик (например, для чистой установки), удалите этот файл:

rm storage/installed.lock

Затем снова перейдите на /install.


Контрольный список после установки

После завершения установщика:

  • Настройте cron-задание по инструкциям на странице завершения (смотрите Cron-задания и очереди)
  • Войдите по адресу https://yourdomain.com/login с учётными данными суперадмина
  • Перейдите в Admin → Plans — просмотрите и настройте планы подписки
  • Перейдите в Admin → Settings → Payments — подключите Stripe/PayPal
  • Перейдите в Admin → Settings → Email — отправьте тестовое письмо
  • Перейдите в Admin → Landing Page — настройте публичную главную страницу
  • Настройте SSL (смотрите SSL-сертификаты)
  • Опционально настройте wildcard DNS (смотрите Настройка Wildcard DNS)

Следующие шаги