Files
amayo/PRODUCTION_ENV_SETUP.md
2025-12-01 18:59:48 +00:00

2.4 KiB

Configuración de Variables de Entorno para Producción

Variables Necesarias para OAuth

Agrega estas variables al archivo .env en tu servidor de producción:

# OAuth Discord - REQUERIDO para producción
DISCORD_REDIRECT_URI=https://api.amayo.dev/auth/callback
NODE_ENV=production

# Cookie Domain (opcional, el código ya usa .amayo.dev en producción)
# SESSION_COOKIE_DOMAIN=.amayo.dev

Verificar Variables Existentes

Asegúrate de que estas variables ya estén configuradas:

# Discord OAuth Credentials (ya deberían estar configuradas)
DISCORD_CLIENT_ID=991062751633883136
DISCORD_CLIENT_SECRET=tu_client_secret_aqui

# Redis/DB en IP interna (ya configuradas)
REDIS_URL=redis://100.120.146.67:6379
REDIS_PASS=tu_password_redis
DATABASE_URL=postgresql://user:password@100.120.146.67:5432/amayo

Configuración en Discord Developer Portal

  1. Ve a https://discord.com/developers/applications
  2. Selecciona tu aplicación (ID: 991062751633883136)
  3. En "OAuth2" → "Redirects", asegúrate de tener:
    • https://api.amayo.dev/auth/callback

Aplicar Cambios

# En el servidor de producción
cd /ruta/a/tu/proyecto/amayo

# 1. Editar .env
nano .env
# Agregar: DISCORD_REDIRECT_URI=https://api.amayo.dev/auth/callback

# 2. Pull los cambios del código
git pull origin main  # o el branch que uses

# 3. Reiniciar el servidor
pm2 restart amayo
# O si usas otro gestor:
# systemctl restart amayo

# 4. Verificar logs
pm2 logs amayo --lines 50

Verificación

  1. Abre el navegador en modo incógnito
  2. Ve a https://docs.amayo.dev
  3. Click en "Login with Discord"
  4. Verifica en DevTools → Application → Cookies:
    • Debe existir amayo_sid con:
      • Domain: .amayo.dev
      • Secure: ✓
      • HttpOnly: ✓
      • SameSite: Lax
  5. Después del login, refresh la página
  6. La sesión debe persistir

Troubleshooting

Si después de aplicar los cambios sigue sin funcionar:

  1. Verificar variables de entorno:

    pm2 env 0 | grep DISCORD
    # Debe mostrar DISCORD_REDIRECT_URI y DISCORD_CLIENT_ID
    
  2. Verificar logs del servidor:

    pm2 logs amayo --lines 100
    # Buscar errores relacionados con OAuth
    
  3. Verificar NGINX:

    sudo nginx -t
    sudo tail -f /var/log/nginx/api.amayo.dev.error.log
    
  4. Limpiar cookies del navegador:

    • DevTools → Application → Cookies
    • Borrar todas las cookies de .amayo.dev
    • Intentar login nuevamente