Question

J'ai eu une lutte constante pour pouvoir me connecter au site www.dragondirectsales.com. C'est un site magento 1.9.1. Le site a un sous-domaine, cas.dragondiectsales.com. Tout semblait bien jusqu'à ce que nous ayons déplacé le site sur l'hébergement en direct qu'ils utilisent actuellement.

Depuis depuis, nous avons combattu les problèmes liés à la connexion, à la fois sur le front-end (Logings des clients) et à l'arrière (admin). Si vous essayez de vous connecter, cela vous boucit simplement à l'écran de connexion approprié sans messages d'erreur. Encore une fois, cela ne se produit que pour les connexions des clients.

Chaque fois que cela arrive, je passe des heures à essayer de le réparer et de réussir à le faire fonctionner sur chaque cas de test que je peux penser. Ensuite, environ un mois plus tard, le client me fait courir en disant qu'il est brisé et jurant qu'il n'a rien touché dans la section administrative. Nous sommes sur la 4ème fois que je devais résoudre ce problème, et tous les changements précédents semblent être là, donc je suis une perte pour ce qui cause cette question.

En ce moment, j'ai le site à l'aide d'URL sécurisées à l'avant. Le chemin de cookie est vide. Cookie Domain est .Dragondirectsales.com. J'utilise HTTP uniquement (iPad disposait d'une question de connexion distincte que celle-ci fixe). Le mode de restriction de cookie est défini sur NO.

La seule chose qui s'est produite entre la dernière fois que cela a travaillé et que nous avons eu un travail de développement de vulgarisation sur l'extension de paiement partielle et je ne suis pas entièrement convaincu que leur travail a quelque chose à voir avec cette question. Je peux éteindre complètement l'extension du module XMLS et le problème se produit toujours.

Toute aide est complètement appréciée!

Était-ce utile?

La solution

Je crois que j'ai enfin trouvé la réponse à cela.

Le truc était de créer l'application de répertoire / code / local / mage / client / modèle et copier la session de fichier.php dans elle.Le fichier session.php est disponible à l'application / code / core / mage / client / modèle.Une fois le fichier déplacé, trouvez cette section:

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

commenter le $ ceci-> renouvelement ();section, donc ça ressemble à ceci:

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

Assurez-vous d'effacer tous les cookies de connexion. J'ai testé cela sur Chrome, Firefox et IE sous Windows, et Safari sur iPad et tout a fonctionné comme un charme.

Merci à cette entrée d'échange de pile pour la réponse: Problème de connexion erratique associé aux cookies

Autres conseils

Vous devez forcer la Magento à utiliser le même domaine de cookie pour les URL sécurisées et non sécurisées. Vous pouvez inspecter vos sites des cookies à l'aide des outils de développement dans le navigateur Firefox ou Chrome. Cette solution a été testée sur Magento 1.9.2.4

Lorsque les variables de gestion des cookies de session ne sont pas définies, Magento incorrectement peut créer deux biscuits "frontend" avec différents domaines de cookie. Cela se produit généralement pendant le processus de connexion lorsque vous avez HTTPS (c.-à-d. SSL activé) pour l'URL sécurisée. Voici des valeurs viables pour la configuration de la gestion des cookies de session.

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

  1. dans le panneau d'administration Aller à System -> Configuration -> Web-> Session Gestion des cookies
  2. Définissez la configuration de la gestion des cookies comme indiqué ci-dessus
  3. Enregistrez la configuration et effacez le cache Magento
  4. redémarrez votre serveur Web pour effacer les variables PHP au cas où vous avez effectué le changement directement dans la base de données MySQL
  5. Effacez votre cache de navigateur pour supprimer les cookies existants associés à votre site Magento. Ceci est important.
  6. Utilisation du préfixe DOT sur le domaine de la cookie est important pour empêcher la création de cookies en double pour la création de l'URL sécurisée

    Changer le domaine de la cookie affectera également le cookie "AdminHTML" utilisé par le Back Termina de Magento. Assurez-vous d'effacer le cache de votre navigateur pour empêcher les problèmes de connexion d'administrateur.

    Modification du code principal Comme décrit dans une autre réponse n'est pas nécessaire lorsque vous définissez correctement la configuration de la gestion des cookies de la session Web.

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top