Почта
KaevCMS отправляет письма для подтверждения электронной почты и восстановления пароля. Подключение почтового сервера настраивается в админке — независимо от выбранного режима отправки.
1. Настройте SMTP
Откройте Админка → Настройки → Почта → Подключение и заполните:
| Поле | Что указать |
|---|---|
| SMTP-сервер | Адрес почтового сервера, например smtp.example.com. |
| Порт | Обычно 587 для STARTTLS или 465 для SSL — уточните у почтового провайдера. |
| Защищённое соединение | STARTTLS/TLS, SSL/SMTPS или без принудительного шифрования. Предпочтительно использовать защищённое подключение. |
| Логин и пароль | Данные почтового ящика; для некоторых сервисов нужен отдельный пароль приложения. |
| Адрес и имя отправителя | От кого игроки будут получать письма. |
| Email системных уведомлений | Необязательное отдельное поле; это не логин SMTP. |
Нажмите «Сохранить настройки почты», затем «Отправить тестовое письмо» на свой адрес. Если письмо получено — подключение SMTP работает.
TIP
Пароль SMTP хранится в зашифрованном виде. После сохранения поле пароля можно оставить пустым, чтобы сохранить прежний пароль. При смене ключа шифрования приложения сохранённый пароль может потребоваться ввести заново.
2. Выберите режим доставки
Перейдите на вкладку «Доставка». Здесь доступны три варианта:
- Синхронный — письмо отправляется прямо во время действия игрока. Самый простой вариант.
- Асинхронный — ответ игроку приходит сразу, а отправка запускается после ответа в отдельном процессе. Постоянный worker не нужен.
- Асинхронный с очередью в базе данных — письмо ставится в БД и отправляется планировщиком или worker; предусмотрены повторные попытки.
Подробное сравнение режимов, таблица и запуск каждого варианта →
Для обычного небольшого сайта проще начать с синхронного режима. При интенсивной регистрации и важности сохранения заявок на отправку предпочтителен режим с очередью в БД, но только при работающем обработчике очереди.
Настройка Cron в Plesk
Для асинхронной отправки с очередью в базе данных нужен работающий планировщик, если не настроен отдельный обработчик очереди.
- Откройте Plesk → Сайты и домены → Планировщик задач.
- Создайте задачу типа «Выполнить PHP-скрипт».
- Заполните параметры:
| Параметр | Значение |
|---|---|
| Путь к скрипту | httpdocs/kaevcms-core/artisan |
| Аргументы | schedule:run |
| Версия PHP | Та же, что используется сайтом |
| Расписание | Каждую минуту (* * * * *) |
- Включите задачу и сохраните настройки.
- Нажмите «Запустить» для проверки.
- В админке KaevCMS откройте Почта → Доставка и нажмите «Проверить Cron», чтобы убедиться, что планировщик выполняется автоматически.
TIP
Путь к artisan зависит от того, где установлена KaevCMS. Если ваша папка отличается, укажите свой путь. После настройки Cron письма из очереди БД будут обрабатываться автоматически при исправной почте и очереди.
3. Проверьте результат
После выбора режима запросите письмо подтверждения на тестовый игровой аккаунт и убедитесь, что оно пришло. Если отправка не происходит:
- Проверьте SMTP через вкладку «Подключение» — успешная проверка режима сама по себе не проверяет почтовый сервер.
- Убедитесь, что адрес сайта (
APP_URL) правильный: он используется в ссылках из фоновых писем. - Для режима с БД откройте Админка → Система → Очереди и проверьте ожидающие и неудавшиеся задания.
WARNING
Статус «Отправлено» означает, что SMTP принял письмо для дальнейшей доставки. Он не гарантирует попадания во входящие: письмо ещё может попасть в спам или быть отклонено другим почтовым сервером. Для домена отправителя рекомендуется настроить SPF, DKIM и DMARC.
Как работают три режима → · Общая документация почты в репозитории KaevCMS
