nakama/MINIO_403_FIX.md

2.7 KiB
Raw Blame History

Исправление ошибки 403 в MinIO

🔴 Проблема

Failed to load resource: the server responded with a status of 403 ()

Это означает, что bucket nakama-media не публичный и браузер не может загрузить изображения.


Быстрое решение (через MinIO Console)

Шаг 1: Откройте консоль MinIO

http://103.80.87.247:9901/

Шаг 2: Войдите

  • Username: minioadmin (или ваш логин)
  • Password: minioadmin (или ваш пароль)

Шаг 3: Настройте публичный доступ

  1. В боковом меню выберите Buckets
  2. Найдите nakama-media
  3. Нажмите на имя bucket
  4. Перейдите на вкладку Anonymous
  5. Нажмите Add Access Rule
  6. Введите префикс: * (для всех файлов)
  7. Права доступа: выберите readonly или download
  8. Нажмите Save

Альтернатива: Через MinIO Client (mc)

На сервере с MinIO выполните:

# Установите mc
curl -O https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin/

# Настройте подключение
mc alias set myminio http://localhost:9000 minioadmin minioadmin

# Сделайте bucket публичным
mc anonymous set download myminio/nakama-media

# Проверьте
mc anonymous get myminio/nakama-media

Должно вывести: Access permission for 'myminio/nakama-media' is 'download'


Автоматический скрипт

bash fix-minio-public.sh

📝 Проверьте .env

Убедитесь, что в .env (в корне проекта) установлено:

MINIO_ENABLED=true
MINIO_ENDPOINT=103.80.87.247
MINIO_PORT=9000
MINIO_USE_SSL=false
MINIO_PUBLIC_BUCKET=true
MINIO_ACCESS_KEY=minioadmin
MINIO_SECRET_KEY=minioadmin
MINIO_BUCKET=nakama-media

🔄 Перезапустите backend

docker compose restart backend

Проверка

Откройте в браузере:

http://103.80.87.247:9000/nakama-media/posts/test.jpg

Если файл существует, он должен загрузиться без ошибок.


🔧 Если используете Nginx (minio.glpshchn.ru)

Убедитесь, что:

  1. MINIO_ENDPOINT = minio.glpshchn.ru
  2. MINIO_PORT = 443
  3. MINIO_USE_SSL = true
  4. MINIO_PUBLIC_URL = https://minio.glpshchn.ru

И перезапустите backend!