¿Persistencia de sesión con Nginx como proxy inverso?

¿Persistencia de sesión con Nginx como proxy inverso?

Estoy usando NGINX como proxy inverso con dos servidores Apache como servidores ascendentes.

Ambos servidores Apache tienen instalada una aplicación PHP personalizada y comparten la misma base de datos MYSQL.

Creo que Apache almacena sesiones en /var/lib/sessions.

Si estoy usando NGINX, ¿cómo solucionar el problema relacionado con la sesión? Entiendo el ip_hash; ¿Pero es esa la única manera factible?

¿Me preguntaba cómo la gente resuelve este problema en el lado del servidor?

Respuesta1

Estrictamente hablando, esto no tiene nada que ver con nginx, es una tarea para proporcionar a los usuarios un sistema de autenticación/autorización consistente en múltiples backends. En lugar de nginx, puedes utilizar cualquier motor de equilibrio de carga.

Enfoque estándar:

  • use memcached para almacenar sesiones (aunque los autores de memcache no lo recomiendan, este método se usa ampliamente e incluso PHP tiene soporte estándar para ello; debe descomentar una línea en php.ini)
  • usar redis para el mismo propósito
  • Las versiones recientes de MySQL proporcionanInterfaz idéntica a Memcached para almacenar sesiones en MySQL(esta vez estarán respaldados en disco) - usa lo que quieras para esto, lo único - debe ser un almacenamiento centralizado

información relacionada