Pregunta

He estado teniendo una lucha constante con poder iniciar sesión en el sitio www.dragondirectsales.com. Es un sitio Magento 1.9.1. El sitio tiene un subdominio, cas.dragondirectsales.com. Todo parecía bien hasta que movimos el sitio al alojamiento en vivo que están usando actualmente.

Desde entonces, hemos estado luchando problemas con el registro, tanto en el extremo delantero (los registros de clientes) como en el extremo posterior (Admin). Si intenta iniciar sesión, simplemente lo hace volver a la pantalla de inicio de sesión apropiada sin mensajes de error. Nuevamente esto sucede solo para los registros de clientes.

Cada vez que sucede, paso horas tratando de solucionarlo y lograr que trabaje en cada caso de prueba que pueda pensar. Luego, aproximadamente un mes después, el cliente me envía un correo electrónico diciendo que se rompe nuevamente, y jurando que no ha tocado nada en la sección de administración. En la cuarta vez, estamos teniendo que solucionar esto, y todos los cambios anteriores parecen estar aún allí, por lo que estoy en una pérdida por lo que está causando este problema.

Ahora mismo tengo el sitio usando las URL seguras en la parte delantera. El camino de las galletas está en blanco. El dominio de la cookie es .dragondirectales.com. Solo estoy usando HTTP (iPad estaba teniendo un problema de inicio de sesión separado que esto se fija). El modo de restricción de cookies se establece en NO.

Lo único que ha ocurrido entre la última vez que funcionó y ahora es que tuvimos un desarrollador de extensión en la extensión de pago parcial, y no estoy del todo convencido de que su trabajo tenga algo que ver con este problema. Puedo apagar la extensión completamente desde el módulo XMLS y el problema aún sucede.

¡Cualquier ayuda es completamente apreciada!

¿Fue útil?

Solución

Creo que finalmente encontré la respuesta a esto.

El truco fue crear la aplicación / código de directorio / local / mago / cliente / modelo y copiar la sesión de archivo.php en ella.El archivo Session.php se puede encontrar en la aplicación / código / núcleo / mago / cliente / modelo.Una vez que se mueve el archivo, encuentre esta sección:

    public function setCustomerAsLoggedIn($customer)
{
    $this->setCustomer($customer);
    $this->renewSession();
    Mage::dispatchEvent('customer_login', array('customer'=>$customer));
    return $this;
}

Comentar las $ esta-> Renovación ();Sección, por lo que se ve así:

    public function setCustomerAsLoggedIn($customer)
{
    $this->setCustomer($customer);
    //$this->renewSession();
    Mage::dispatchEvent('customer_login', array('customer'=>$customer));
    return $this;
}

Asegúrese de borrar todas las cookies de inicio de sesión. Probé esto en Chrome, Firefox, e IE en Windows, y Safari en iPad y todo funcionó como un encanto.

Gracias a esta entrada de intercambio de pila para la respuesta: Problema de inicio de sesión relacionado con la cookie errática

Otros consejos

Tienes que forzar a Magento a usar el mismo dominio de cookies para URLS seguros e inseguros. Puede inspeccionar las cookies de sus sitios utilizando las herramientas de desarrollador en el navegador Firefox o Chrome. Esta solución fue probada en Magento 1.9.2.4

Cuando las variables de administración de cookies de sesión no se establecen incorrectamente Magento puede crear dos cookies "frontend" con diferentes dominios de cookies. Esto suele ocurrir durante el proceso de inicio de sesión cuando tiene HTTPS (es decir, SSL habilitado) para la URL segura. Aquí hay valores viables para la configuración de la administración de cookies de sesión.

Cookie Life Time: 3600
Cookie Path: /
Cookie Domain : .mydomain.com (The dot prefix is important)
Use HTTP Only : No
Cookie Restriction Mode: No 

  1. En el panel de administración Ir al sistema -> Configuración -> Web-> Administración de cookies de sesión
  2. Configure la configuración de administración de cookies como se muestra arriba
  3. guarda la configuración y borre el caché magento
  4. Reinicie su servidor web para borrar las variables PHP en caso de que realice el cambio directamente en la base de datos MYSQL
  5. Borre su caché del navegador para eliminar las cookies existentes asociadas con su sitio Magento. Esto es importante.
  6. Uso del prefijo DOT en el dominio de la cookie es importante para evitar que se creen cookies duplicadas para la URL segura

    Cambiar el dominio de la cookie también afectará la cookie "AdminhTML" utilizada por el Magento Back End. Asegúrese de borrar su caché del navegador para evitar problemas de inicio de sesión de administrador.

    Cambiar el código principal como se describe en otra respuesta no es necesario cuando Yu configure correctamente la configuración de la administración de cookies de sesión web.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top