123 lines
3.2 KiB
Markdown
123 lines
3.2 KiB
Markdown
|
|
# 🎯 НАЧНИТЕ ЗДЕСЬ - Python Moderation Backend
|
|||
|
|
|
|||
|
|
## Что это?
|
|||
|
|
|
|||
|
|
Полностью рабочий бэкенд модерации на Python3 с FastAPI.
|
|||
|
|
Решает все проблемы с email и авторизацией из Node.js версии.
|
|||
|
|
|
|||
|
|
## Быстрый запуск (3 шага)
|
|||
|
|
|
|||
|
|
### Шаг 1: Настройте email в .env
|
|||
|
|
|
|||
|
|
Откройте `nakama/.env` (корневой файл) и добавьте:
|
|||
|
|
|
|||
|
|
```env
|
|||
|
|
EMAIL_PROVIDER=yandex
|
|||
|
|
YANDEX_SMTP_HOST=smtp.yandex.ru
|
|||
|
|
YANDEX_SMTP_PORT=465
|
|||
|
|
YANDEX_SMTP_SECURE=true
|
|||
|
|
YANDEX_SMTP_USER=ваш_email@yandex.ru
|
|||
|
|
YANDEX_SMTP_PASSWORD=ваш_пароль_приложения
|
|||
|
|
EMAIL_FROM=noreply@nakama.guru
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**Где взять пароль приложения:**
|
|||
|
|
1. https://id.yandex.ru/security
|
|||
|
|
2. "Пароли приложений" → Создать для "Почта"
|
|||
|
|
3. Скопировать в `YANDEX_SMTP_PASSWORD`
|
|||
|
|
|
|||
|
|
### Шаг 2: Создайте админа
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
mongosh nakama
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
```javascript
|
|||
|
|
db.users.updateOne(
|
|||
|
|
{ username: "glpshchn00" }, // ваш username
|
|||
|
|
{
|
|||
|
|
$set: {
|
|||
|
|
email: "aaem9848@gmail.com", // ваш email
|
|||
|
|
emailVerified: true,
|
|||
|
|
role: "admin"
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
);
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Шаг 3: Запустите сервер
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd moderation/backend-py
|
|||
|
|
./start.sh
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Готово! Сервер запущен на http://localhost:3001
|
|||
|
|
|
|||
|
|
## Проверка
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Health check
|
|||
|
|
curl http://localhost:3001/health
|
|||
|
|
|
|||
|
|
# Должен вернуть:
|
|||
|
|
# {"status":"ok","service":"moderation","version":"2.0.0-python"}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Откройте фронтенд модерации и попробуйте отправить код на email - должно работать!
|
|||
|
|
|
|||
|
|
## Что дальше?
|
|||
|
|
|
|||
|
|
- `QUICKSTART.md` - быстрый старт с примерами
|
|||
|
|
- `INSTALL.md` - подробная установка
|
|||
|
|
- `README.md` - полная документация
|
|||
|
|
- `MIGRATION.md` - миграция с Node.js
|
|||
|
|
|
|||
|
|
## Проблемы?
|
|||
|
|
|
|||
|
|
### Email не отправляется
|
|||
|
|
|
|||
|
|
1. Проверьте, что используете **пароль приложения**, не основной пароль Yandex
|
|||
|
|
2. Проверьте логи - должна быть строка: `[Email] Настройка SMTP`
|
|||
|
|
3. Убедитесь, что переменные в `.env` без кавычек и пробелов
|
|||
|
|
|
|||
|
|
### 403 Forbidden
|
|||
|
|
|
|||
|
|
Проверьте роль пользователя:
|
|||
|
|
```javascript
|
|||
|
|
db.users.findOne({ email: "ваш_email@yandex.ru" })
|
|||
|
|
// role должна быть "admin" или "moderator"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Сервер не запускается
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Проверьте Python версию (нужна 3.11+)
|
|||
|
|
python3 --version
|
|||
|
|
|
|||
|
|
# Переустановите зависимости
|
|||
|
|
pip install -r requirements.txt
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Переключение с Node.js
|
|||
|
|
|
|||
|
|
Если у вас уже запущена Node.js версия:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Остановите Node.js
|
|||
|
|
pm2 stop moderation-backend
|
|||
|
|
|
|||
|
|
# Запустите Python
|
|||
|
|
cd moderation/backend-py
|
|||
|
|
./start.sh
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Фронтенд продолжит работать без изменений!
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
**Готово к использованию! 🎉**
|
|||
|
|
|
|||
|
|
Email работает, авторизация работает, API совместимо с фронтендом.
|
|||
|
|
|