dodaj do koszyka nie działa localhost Tylko w chrome (nowa instalacja Magento 2)

18

Zainstalowałem nową wersję Magento 2 localhosti próbuję dodawać przedmioty do koszyka, ale nie działałem ...

po kliknięciu przycisku dodaj do koszyka przycisk zmieni się w dodawanie i pozostanie tam, nie dodawano do koszyka.

Jakieś sugestie ?

Arslantabassum
źródło

Odpowiedzi:

29

Zmień swój podstawowy adres URL z localhostna 127.0.0.1.

Używanie localhostjako domeny w podstawowym adresie URL powoduje problemy w Magento 2.

Podstawowa konfiguracja adresu URL Magento znajduje się w core_config_datatabeli. Następujące values mogą wymagać zmiany:

  • web/unsecure/base_url
  • web/secure/base_url

Na przykład, jeśli wcześniej tak było http://localhost/magento2community/, powinieneś to zmienić nahttp://127.0.0.1/magento2community/

Po zmianie adresu URL opróżnij pamięć podręczną ( bin/magento cache:flush). Może być również konieczne wyczyszczenie katalogów var .

Naveenbos
źródło
1
dlaczego odpowiedź jest zapisana jako kod?
Jon
1
To rozwiązało mój problem z MAMP.
Klevis Miho
1
Działa dobrze dzięki.
Sarfaraj Sipai
11
  1. Proszę zmień localhost się 127.0.0.1,
  2. Aby zmienić bezpośrednio z bazy danych Goto -> core_config_data tabela
  3. Następnie zmień bezpieczny i niezabezpieczony podstawowy adres URL

http: // localhost / do http://127.0.0.1

Sheshgiri Anvekar
źródło
7

Ci, którzy nie chcą zmieniać adresu localhost dla tego problemu.

Problem wynika z niedopasowania form_key. Klucz formularza wysyłany podczas akcji dodawania do koszyka jest niedopasowany do klucza formularza sesji sklepu.

Iść do

vendor / magento / module-checkout / Controller / Cart / Add.php execute ()

i skomentuj poniższy warunek If.

if (!$this->_formKeyValidator->validate($this->getRequest())) {
        return $this->resultRedirectFactory->create()->setPath('*/*/');
    } 

UWAGA: To nie jest zalecane rozwiązanie dla środowiska produkcyjnego.

Odniesienie: szybka poprawka .

Frank
źródło
wielkie dzięki, proszę pana
sarvesh Dineshkumar Patel,
2

Po moim teście Magento 2 może nie działać prawidłowo w pojedynczej domeny, jak http://localhost/, http://mysite/,http://localsite/ itd.

Inne niż Użyj 127.0.0.1 bezpośrednio, możemy zmienić naszą witrynę url podobny http://mysite/do http://mysite.local/, i dodać 127.0.0.1 mysite.localdo naszego komputera pliku hosta , a następnie mogliśmy korzystać z funkcji serwisu, takich jak „dodaj do koszyka” prawidłowo.

Key Shang
źródło
1

Miałem ten sam problem na moim komputerze lokalnym. Zasadniczo zmieniłem podstawowy adres URL z obszaru administracyjnego.

Przejdź do sklepu -> konfiguracja -> sieć -> podstawowy adres URL ->

zmień na http://127.0.0.1/your_magento_installation/

zadziałało ode mnie.

Dhimant
źródło
0

Problem można rozwiązać, zmieniając adres URL domeny z localhost na 127.0.0.1

Można zmienić w bazie danych w core_config_data

ustaw web / unsecure / base_url na http://127.0.0.1

Po tym wyczyść pamięć podręczną Magento i pamięć podręczną przeglądarki i jego działania.

prashanthi kontemukkala
źródło