Files
links/PRODUCTION_FIX.md
Andrey K. Choi 9b31fcf193
Some checks failed
continuous-integration/drone/push Build is failing
🔧 Добавлен скрипт исправления продакшена
 Новый функционал:
- scripts/fix-production-env.sh - автоматическое исправление .env для продакшена
- make fix-production - команда для быстрого исправления

🎯 Что исправляет:
- DJANGO_DEBUG=False (вместо True)
- NEXT_PUBLIC_API_URL=http://links.shareon.kr (вместо localhost)
- Правильные настройки для продакшена
- Пересоздание БД с правильным паролем
- Выполнение миграций
- Создание суперпользователя

📝 Документация:
- PRODUCTION_FIX.md - инструкция по исправлению проблем

🚨 Решает проблему:
- password authentication failed for user links_user
- undefined в API URL фронтенда
- Неправильные настройки DEBUG режима
2025-11-02 15:09:10 +09:00

2.8 KiB
Raw Blame History

Быстрое исправление проблем продакшена

🚨 Проблема: password authentication failed

Причина

Неправильные настройки в .env файле:

  • DJANGO_DEBUG=True (должно быть False)
  • NEXT_PUBLIC_API_URL=http://localhost:8000 (должно быть домен)
  • Возможно проблема с паролем БД

Быстрое решение

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

cd /opt/links
git pull

# Автоматическое исправление
make fix-production

🔧 Ручное исправление

Если автоматическое не сработало:

# 1. Остановить контейнеры
make down

# 2. Создать правильный .env
cat > .env << 'EOF'
# Django настройки
DJANGO_SECRET_KEY=lskjflSDJHFdSFYU7TYOREIFLUDJKFBNKLJSDHFP9Q234856QT80OUAEIYDWSF9PQ28345701784QRTEOYAGWDFLSBAPWO9I485Y
DJANGO_DEBUG=False
DJANGO_ALLOWED_HOSTS=links.shareon.kr,sharon.kr,localhost,127.0.0.1

# База данных PostgreSQL
DATABASE_ENGINE=django.db.backends.postgresql
DATABASE_NAME=links_db
DATABASE_USER=links_user
DATABASE_PASSWORD=links_OASDUIFH90324*ftye(guBJ;O234789SDgfu{
DATABASE_HOST=db
DATABASE_PORT=5432

# PostgreSQL настройки для контейнера
POSTGRES_DB=links_db
POSTGRES_USER=links_user
POSTGRES_PASSWORD=links_OASDUIFH90324*ftye(guBJ;O234789SDgfu{

# Frontend настройки (ВАЖНО!)
NEXT_PUBLIC_API_URL=http://links.shareon.kr

# Для продакшена
DJANGO_SECURE_SSL_REDIRECT=False
DJANGO_SECURE_HSTS_SECONDS=31536000
DJANGO_SECURE_HSTS_INCLUDE_SUBDOMAINS=True
DJANGO_SECURE_HSTS_PRELOAD=True
EOF

# 3. Удалить старые данные БД
docker volume rm links_postgres_data

# 4. Пересобрать и запустить
make build-prod
make up-prod

# 5. Подождать запуска БД
sleep 15

# 6. Выполнить миграции
make migrate

# 7. Создать суперпользователя
make superuser

Проверка

После исправления проверьте:

# Быстрая проверка
make check-nginx

# Проверка API
curl http://links.shareon.kr/api/

# Проверка админки
curl http://links.shareon.kr/admin/

🎯 Результат

После исправления должно работать:

🔍 Диагностика

Если проблемы остались:

# Полная диагностика
make check-nginx-full

# Логи контейнеров
make logs

# Статус контейнеров
make status