Jak usunąć SID (identyfikator sesji) z adresu URL w Magento 2

Odpowiedzi:

23

Przejdź do sklepu> Konfiguracja> Ogólne> Internet> Ustawienia sprawdzania poprawności sesji> Użyj SID na Storefront i ustaw jego wartość na Nie

przykład

Oto dobra odpowiedź na temat SID :

SID to „identyfikator sesji”. Magento używa tego do śledzenia aktywności użytkownika w ramach tej samej instalacji Magento. Zwykle Magento obsługuje jedną stronę internetową i jeden sklep z jednej instalacji (bazy danych).

Magento może zasilać wiele witryn z wieloma sklepami z jednej instalacji. Identyfikator SID pozwala użytkownikom pozostać zalogowanym podczas przeglądania tych witryn / sklepów.

Myślę, że jeśli masz włączoną funkcję, identyfikator SID jest wysyłany podczas uzyskiwania dostępu do adresów URL katalogu, dzięki czemu Magento może zaktualizować sesję o lokalizację / stan użytkownika dla bieżącej witryny / sklepu.

Jeśli nie korzystasz ze środowiska wielu witryn lub wielu sklepów, możesz bezpiecznie wyłączyć identyfikator SID na interfejsie użytkownika.

Siarhey Uchukhlebau
źródło
Dzięki za odpowiedź !!! Idę to zrobić i odpowiadam za kilka minut !!!
Matt Bidas,
2
Zastosowałem to podejście i wyłączyłem SID na interfejsie, również tryb Single-store ustawiony na „Yes”, SID nadal się wyświetla. Czy w trybie produkcyjnym powinniśmy zregenerować pliki, aby to zadziałało? Nie sądzę, ponieważ jest to wartość konfiguracyjna. Jakieś pomysły?
dchayka
@dchayka Myślę, że może to być problem z pamięcią podręczną. Spróbuj go odświeżyć.
Siarhey Uchukhlebau,
Pamięć podręczna @SiarheyUchukhlebau została odświeżona. Zrozumiałem, co to jest. Dziękujemy za kontynuację.
dchayka
@SiarheyUchukhlebau Jak mogę zmienić metatag na przykład.com/?SID=nufp7tmaardcoff2ddbp4vmmo6 in magento 2 ??
supriya mishra
4

Ci z was, którzy już ustawili SID na Storefront na No (jak zauważył Siarhey Uchukhlebau w swojej odpowiedzi), ale nadal nie mogą pozbyć się & sid = ... w adresie URL, sprawdź poniższe linki.

Jest to błąd Magento, który zostanie naprawiony w wersji 2.3.
Powiązany bilet: https://github.com/magento/magento2/issues/9453

Na szczęście istnieje samouczek Inchoo, jak usunąć go za pomocą pliku .htaccess jako obejście
http://inchoo.net/dev-talk/remove-sid-from-magento-urls/

Michael Poppinger
źródło
Wydano Magento 2.3. Czy to zostało naprawione? Nic nie mogę na ten temat znaleźć.
Akif
Nie używam Magento 2.3, ale w Magento 2.2.6 nie mam już tego problemu.
Michael Poppinger
0

Nie jest ?SIDautomatycznie dodawany przez PHP, jeśli PHP jest skonfigurowane tak, aby nie przechowywać sesji na serwerze lub przeglądarka nie akceptuje plików cookie?

Wierzę, że Magento nie robi tego domyślnie. Jest na to ustawienie, ale zakładam, że OP tego nie zmienił, inaczej sam by to wymyślił.

Giel Berkers
źródło
Jeśli opcja wykonawcza PHP session.use_trans_sid jest włączona, względne identyfikatory URI zostaną zmienione tak, aby automatycznie zawierały identyfikator sesji. Ta opcja nie jest domyślnie włączona. Domyślne ustawienie Magento 2 dla „Użyj SID na stronie sklepu” to „Tak”.
t-richards
-7

vendor/magento/framework/Session/SidResolver.php

Znajdź funkcję i skomentuj wiersz jak poniżej.

public function getUseSessionInUrl()
{
   // return $this->_useSessionInUrl;
}
VIJAY KASHYAP
źródło
1
Nie edytuj podstawowych plików Magento. Również po następnej komendzie Composer zawartość vendor/magento/framework/może zostać przywrócona / zaktualizowana
7ochem