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

114 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Быстрое исправление проблем продакшена
## 🚨 Проблема: password authentication failed
### Причина
Неправильные настройки в `.env` файле:
- `DJANGO_DEBUG=True` (должно быть False)
- `NEXT_PUBLIC_API_URL=http://localhost:8000` (должно быть домен)
- Возможно проблема с паролем БД
### ⚡ Быстрое решение
На сервере выполните:
```bash
cd /opt/links
git pull
# Автоматическое исправление
make fix-production
```
### 🔧 Ручное исправление
Если автоматическое не сработало:
```bash
# 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
```
### ✅ Проверка
После исправления проверьте:
```bash
# Быстрая проверка
make check-nginx
# Проверка API
curl http://links.shareon.kr/api/
# Проверка админки
curl http://links.shareon.kr/admin/
```
### 🎯 Результат
После исправления должно работать:
- ✅ Сайт: http://links.shareon.kr
- ✅ API: http://links.shareon.kr/api/
- ✅ Админка: http://links.shareon.kr/admin/
- ✅ Логин через фронтенд
### 🔍 Диагностика
Если проблемы остались:
```bash
# Полная диагностика
make check-nginx-full
# Логи контейнеров
make logs
# Статус контейнеров
make status
```