Prestashop tiene características de seguridad bastante estrictas y una de ellas es sin duda la duración del tiempo de espera de la sesión, que es bastante corto. Esta táctica es para reducir la exposición de su aplicación a ataques basados ​​en sesiones, como el robo de cookies de sesión.

Sin embargo, esto puede ser bastante molesto para cualquiera que esté trabajando con la plataforma. Los administradores de la tienda pueden desconectarse de la interfaz de administración si están inactivos durante algún tiempo. Esto puede ser muy frustrante.

Hoy te mostraré por qué sucede y cómo solucionar este error.

Prestashop-login

Problema de inicio de sesión del administrador de Prestashop: ¿dónde ve este error?

Este problema generalmente ocurre cuando ocurre una de estas condiciones:

  • El panel de administración de Prestashop cierra la sesión del administrador mientras actualiza la configuración del producto.
  • El propietario de la tienda Prestashop no puede iniciar sesión, sin importar cuántas veces se borre la memoria caché del navegador.
  • El panel de administración de Prestashop desconecta al propietario después de unos minutos de inactividad.

Problema de inicio de sesión del administrador de Prestashop: 3 razones

Veamos cuáles son las 3 razones principales por las que ocurre el problema de inicio de sesión del administrador de Prestashop.

  • Conjunto de duración máxima de inactividad: «Admin Controller» gestiona las funciones de back office en Prestashop. El período de inactividad de cookies predeterminado se establece en 15 minutos en este archivo. Será eliminado del panel de administración después de 15 minutos de inactividad.
  • Uso de la dirección IP dinámica: cuando estás en el panel de administración de Prestashop, este sistema protege la sesión etiquetando tu sesión de inicio de sesión con tu dirección IP (a través de una cookie de autenticación). Compruebe constantemente esta dirección IP. Si su dirección IP cambia, invalidará la cookie y le pedirá que inicie sesión nuevamente.
  • Valores incorrectos para «PS_SHOP_DOMAIN» y «PS_SHOP_DOMAIN_SSL»: se proporcionó un nombre de dominio incorrecto para PS_SHOP_DOMAIN y PS_SHOP_DOMAIN_SSL en la tabla ps_configuration.

Problema de inicio de sesión del administrador de Prestashop: ¿cómo solucionar este error?

Para resolver este problema, utilizamos principalmente 5 formas diferentes, según el problema exacto al que se enfrenta el propietario de la tienda.

Pero antes de entrar en detalles y realizar cambios en la tienda, asegúrese de tener una copia de seguridad de la base de datos y los archivos del sitio web.

1. Limpia la memoria caché y las cookies de tu navegador

Para verificar esto, intente iniciar sesión desde otro navegador o active el «Modo incógnito».

2. Limpia la memoria caché de Prestashop

Los archivos de caché se encuentran en estas ubicaciones.

Vaya a estas carpetas y elimine todos los archivos que contienen.

  • /tools/smarty/cache
  • O /tools/smarty_v2/cache
  • /tools/smarty/compile
  • O  /tools/smarty_v2/compil

3. Corrija el nombre de dominio guardado en la base de datos

Proporcione el nombre de dominio correcto para PS_SHOP_DOMAIN y PS_SHOP_DOMAIN_SSL en la tabla ps_configuration.

Solo debe proporcionar el nombre de dominio. Por ejemplo: la URL de su tienda es http://test.com/store/, debe proporcionar valores como:

PS_SHOP_DOMAIN = prueba.com
PS_SHOP_DOMAIN_SSL = prueba.com

El directorio de instalación debe indicarse en el archivo » /config/setting.inc.php «.

4. Deshabilitar la verificación de la dirección IP

Eliminar la verificación de la dirección IP del usuario realizada por Prestashop.

Puede deshabilitarlo en el archivo “ classes/cookie.php ” dentro de la función “ isLoggedBack() ”.

Aquí, elimine o comente la siguiente condición.

!Configuración :: obtener (‘PS_COOKIE_CHECKIP’))

5. Aumentar el periodo de inactividad de las cookies

El período de inactividad está establecido en 15 minutos de forma predeterminada.

Puede aumentar este valor en el archivo » classes/controller/AdminController.php «.

Busque el siguiente código en el archivo:

if (hora $este-> Context> cookie-> last_activity + 900 <())

Aquí el período de inactividad se establece en 900 s (15 minutos). Puede reemplazar este valor en segundos.

pattern-lines

Prueba gratis hosting prestashop Rápido, Optimizado, Seguro

Cámbiate a Bhoost con 30 días gratis y migración incluida

Prueba ahora gratis 30 días
macbook