Comment supprimer le SID (ID de session) de l'URL dans Magento 2

Réponses:

23

Accédez à Store> Configuration> General> Web> Session Validation Settings> Use SID on Storefront and set its value to No

exemple

Voici la bonne réponse à propos du SID :

Le SID est un "ID de session". Magento l'utilise pour suivre l'activité d'un utilisateur dans la même installation Magento. Normalement, Magento alimente un site Web et un magasin à partir d'une seule installation (base de données).

Magento pourrait cependant alimenter plusieurs sites Web avec plusieurs magasins à partir d'une seule installation. Le SID permet aux utilisateurs de rester connectés tout en naviguant sur ces sites Web / magasins.

Je pense que si vous avez activé la fonction, le SID est envoyé lors de l'accès aux URL du catalogue afin que Magento puisse mettre à jour la session avec l'emplacement / l'état de l'utilisateur pour le site Web / magasin actuel.

Si vous n'exécutez pas un environnement multi-site Web ou multi-magasins, il est sûr de désactiver le SID sur le frontend.

Siarhey Uchukhlebau
la source
Merci pour votre réponse !!! Je vais faire ça et répondre au résultat en quelques minutes !!!
Matt Bidas
2
J'ai utilisé cette approche et désactivé le SID sur le front-end, également le mode Single-store réglé sur "Oui", le SID apparaît toujours. En mode production, faut-il régénérer les fichiers pour que ça marche? Je ne pense pas car c'est une valeur de configuration. Des idées?
dchayka
@dchayka Je pense que cela pourrait être un problème de cache. Essayez de le rafraîchir.
Siarhey Uchukhlebau
Le cache @SiarheyUchukhlebau a été actualisé. J'ai compris ce que c'était. Merci pour le suivi.
dchayka
@SiarheyUchukhlebau Comment puis-je changer la balise META pour example.com/?SID=nufp7tmaardcoff2ddbp4vmmo6 dans magento 2 ??
supriya mishra le
4

Ceux d'entre vous qui ont déjà défini Utiliser SID sur Storefront sur Non (comme l'a souligné Siarhey Uchukhlebau dans sa réponse) mais ne peuvent toujours pas se débarrasser de & sid = ... dans l'URL, consultez les liens suivants.

Il s'agit d'un bug Magento, qui sera corrigé dans la version 2.3
Ticket associé: https://github.com/magento/magento2/issues/9453

Heureusement, il existe un tutoriel Inchoo sur la façon de le supprimer via le fichier .htaccess comme solution de contournement
http://inchoo.net/dev-talk/remove-sid-from-magento-urls/

Michael Poppinger
la source
Magento 2.3 est sorti. Cela a-t-il été corrigé? Je ne trouve rien à ce sujet.
Akif
Je n'utilise pas Magento 2.3, mais dans Magento 2.2.6 je ne suis plus confronté à ce problème.
Michael Poppinger
0

N'est-il pas ?SIDautomatiquement ajouté par PHP si PHP est configuré pour ne pas stocker de sessions sur le serveur ou si le navigateur n'accepte pas les cookies?

Je pense que Magento ne le fait pas par défaut. Il y a un paramètre pour cela, mais je suppose que le PO n'a pas changé cela, sinon il aurait compris cela par lui-même.

Giel Berkers
la source
Si l'option PHP run-time session.use_trans_sid est activée, les URI relatifs seront modifiés pour contenir automatiquement l'ID de session. Cette option n'est pas activée par défaut. Le paramètre par défaut de Magento 2 pour "Utiliser SID sur la vitrine" est "Oui".
t-richards
-7

vendor/magento/framework/Session/SidResolver.php

Trouvez la fonction et commentez la ligne comme ci-dessous.

public function getUseSessionInUrl()
{
   // return $this->_useSessionInUrl;
}
VIJAY KASHYAP
la source
1
Ne modifiez pas les fichiers de base de Magento. Aussi après la prochaine commande Composer, le contenu de vendor/magento/framework/pourrait être restauré / mis à jour
7ochem