Помилка Magento 2 ERR_TOO_MANY_REDIRECTS


20

Я новачок у Magento, після встановлення Magento 2 спільноти. Я не маю доступу до панелі адміністратора. Я отримую нижче помилки.

На цій веб-сторінці є цикл переспрямування

Помилка ERR_TOO_MANY_REDIRECTS

Будь ласка, допоможіть мені вирішити проблему. Заздалегідь дякую всім.


Дайте більше інформації. Як ви встановили magento? Які параметри ви ввели під час встановлення
Аркадій Чижов

У вас включений XDebug?
Олексій Паляруш

Після деяких проблем із налаштуванням SSL у мене виникла та сама проблема. Щойно запустив це виправлено: sudo php bin / magento cache: flush
AdNauseum

Відповіді:


28

У мене була така ж проблема з маніпулюванням базами даних, ця відповідь вирішила мою проблему ERR_TOO_MANY_REDIRECTS:

/magento//a/84756/50635

Щоб виправити це, будь ласка, спробуйте встановити Використовувати захищені URL-адреси в адміністраторі на значення true, в системі -> Налаштувати -> Загальне -> Веб.

Або, маючи доступ до бази даних, змініть наступне значення запису на 1 :

SELECT * FROM core_config_data where path like '%web/secure/use_in_adminhtml%';

5
У моєму випадку це значення вже 1, я все ще бачу цю помилку.
кашиш

1
працює як шарм
mrtuvn

Працює, дуже добре
Vu Tran Kien

Дякую!! Працювали як очікувалося!
MazeStricks

18

У моєму випадку я імпортував уже існуючу базу даних Magento 2. Причиною я отримав помилку через те, що домен файлів cookie в базі даних. Перейдіть до своєї бази даних і подивіться в таблицю core_config_data. Ви повинні побачити шлях, який називається web/cookie/cookie_domain. Переконайтесь, що домен відповідає тому, на який ви встановили Magento 2. Наприклад: Якщо ви встановили Magento 2 на local.dev/<magento-root> вході, він web/cookie/cookie_domainповинен бути local.dev.


4
У мене була така ж проблема. Я змінив значення web/cookie/cookie_domainз NULL на моє доменне ім'я, але все ще не працює.
кашиш

1
Дуже дякую! Я змінив значення на свій "domain.local" і все працює
Микола Сілін

Дуже дякую!! для мене це було питання! : D
Pierre-Verthume Larivière

14

У цій публікації я посилаюсь на ваш домен магазину magento як example.com. Якщо його www.example.com або store.example.com або інше, замініть їх відповідно.

Я щойно стикався з цим питанням і ось конкретика. Magento 2 2.2.2 встановити. Я налаштував захисні базові URL-адреси на http://example.com/ спочатку, і коли я налаштовував на сервер свій конфігурацію letsencrypt ssl cert, я бездумно включив можливість перенаправляти весь http-трафік на https.

Це звичайно не буде проблемою, але Magento може бути трохи темпераментним. Я відвідав мій магазин, і мій SSL працює правильно, але, намагаючись отримати доступ до адміністратора, я отримав повідомлення "ERR_TOO_MANY_REDIRECTS" та невдале завантаження сторінки.

Я бачу кілька способів виправити цю проблему, але той, який спрацював для мене з першої спроби, це такий.

  1. SSH на сервер.
  2. компакт-диск до вашого magento встановити реж.
  3. запустіть таку команду:
    • php bin / magento config: показати

переглянути вихід і шукати web / secure / base_url, web / secure / base_link_url & web / secure / use_in_adminhtml .

Ці значення слід налаштувати за допомогою https://example.com/ для параметрів URL та web / secure / use_in_adminhtml = 1.

Якщо їх немає, ви можете запустити наступні команди зі свого каталогу magento install, щоб оновити конфігурацію.

  1. php bin / magento config: чутливий: встановити web / secure / base_url https://example.com/
  2. php bin / magento config: чутливий: встановити web / secure / base_link_url https://example.com
  3. php bin / magento config: встановити web / secure / use_in_adminhtml 1
  4. php bin / magento cache: чистий

Після цього завітайте на сторінку свого адміністратора, очистіть кеш браузера, перезавантажте і тепер у вас повинен бути доступ! з підтримкою SSL.

Перший крок, який я б зробив після цього, - це увійти назад на адміністративний портал і перевірити свої параметри конфігурації, щоб переконатися, що ви не збираєтеся стикатися з будь-якими іншими несподіваними проблемами.

Я сподіваюся, що це допоможе!

Ось декілька ресурсів Magento, які допоможуть вам орієнтуватися:

Встановити значення конфігурації

Довідник щодо інших конфігураційних контурів

Чутливі та системні посилання


1
Спасибі. Крім того, у мене було встановлено переадресацію plesk з http на https, яку мені довелося вимкнути, щоб отримати Magento Backkend. Примітка: очищення кеша є важливим кроком тут.
с.Даніель

11

У моєму випадку я скопіював веб-сайт із сервера клієнта і налаштував його у своїй локальній системі. Я просто видалив файл cookie з домену

core_config_data

стіл, а потім промив кеш, він працював на мене!

Ви також можете це зробити:

У таблиці "core_config_data" видаліть значення "web / cookie / cookie_domain" і встановіть "web / cookie / cookie_httponly" на "0". Очистіть кеш, видаливши файли у "var / cache".


4

У мене була така ж проблема після переключення сайту на https. Коли я перевірив web / cookie / cookie_domain у core_config_data, це було NULL.

mysql> select * from core_config_data where path like 'web/cookie%';
+-----------+---------+----------+--------------------------+-------+
| config_id | scope   | scope_id | path                     | value |
+-----------+---------+----------+--------------------------+-------+
|        19 | default |        0 | web/cookie/cookie_domain | NULL  |
+-----------+---------+----------+--------------------------+-------+
1 row in set (0.00 sec)

Потім я встановив його на свій fqdn:

mysql> update core_config_data set value = 'mysites.fqdn.com' where path = 'web/cookie/cookie_domain' ;

Після цього я перезапустив веб-сайт, і він працював чудово:

systemctl restart apache2


2

Ця помилка виникає через використання localhostв якості імені хоста, особливо в Chrome. Ми рекомендуємо використовувати власний домен. Перегляньте в блозі Алана деталі

Це не Magento, це те, що веб-браузери поводяться по-різному при використанні доменного імені з меншими двома крапками, наприклад, localhost.


Де ОП згадував, що він встановив його за допомогою "localhost"?
MrUpsidown

2

Ви можете спробувати перевстановити Magento з локальним IP-адресою а не з localhost.

Це буде http://127.0.0.1/foldername. Встановивши цей спосіб, ви зможете отримати доступ до нього з будь-якого браузера.

Ви також можете змінити запис у базі даних у core_config_data, де значення буде виглядати так:

http://localhost/foldername/

замініть це на

http://127.0.0.1/foldername/

В обох напрямках ім'я папки - це ваш каталог, де знаходиться Magento.


2

Крім того, - просто додати те, що я відчував, якщо ви працюєте з apache, але використовуєте nginx для припинення ssl (і, ймовірно, кеш-лаку), то переконайтеся, що у вашому апачі є

 SetEnvIf X-Forwarded-Proto "https" HTTPS=on

в іншому випадку воно йде навколо і навколо з несамовитістю перенаправлення nginx



0

Не використовуйте umlauts у базовому URL-адресі, наприклад:

www.yourhost/österreich

Мені довелося перейменувати його


0

У моєму випадку я встановив значення для web/cookie/cookie_domainшляху в core_config_dataтаблиці на NULL .

Це можна зробити за допомогою Magerun , наприклад:

magerun config:set web/cookie/cookie_domain NULL

0

У моєму випадку я використовував IP замість localhost, але все ще не вирішив. Змінено ключ URL-адреси адміністратора. Це спрацювало.

Звичайно, всі вищезазначені відповіді все ще справедливі, коли ми стикалися і застосовували їх під час розробки.

Хром викликає це багато. Firefox трохи краще впорається з цим.


0

Я використовую Magento 2 на AWS і, виконуючи пропозицію Райана Вілсона, усунув проблему, перейшовши в папку htdocs, де встановлено magento, і скористатися наступною командою

sudo php bin/magento config:set web/unsecure/base_url http://www.yoursite.com/
sudo php bin/magento config:set web/secure/base_url https://www.yoursite.com/
php bin/magento cache:clean

0

у версії magento 2.2 Я навіть не можу знайти шлях до веб / cookie / cookie_domain у core_config_data. тож у моєму випадку проблема полягала в сервісі з запитом. Я встановив session.save_handler = запам'ятовується у php.ini згідно з документами magento, і це зупинило адмінвідвідання від відкриття правильно, тим часом передня панель була в порядку. Після зміни обробників поверніться до session.save_handler = файли все працювали


0

У мене була така ж проблема, щоб виправити це, зайшовши

SELECT * FROM core_config_data where path like 'web/secure/use_in_adminhtml'

значення змінюється на NULL на 1


0

Видалення var / cache / * та var / session / * було виправлено для мене після переміщення сайту з одного піддомену на інший та зміни необхідних base_urls.


0

Жодне із запропонованих тут рішень не працювало для мого середовища розробки, яке працювало в контейнері Docker. Що для мене працювало, було змінити наступний рядок у etc/nginx/fastcgi:

fastcgi_param HTTPS $https if_not_empty;

… До:

fastcgi_param HTTPS on;

Джерело: https://magenticians.com/magento-ssl-configuration-isissue- разрешилось /# Enabling-SSL .


(Не забудьте перезапустити контейнер після внесення зазначених змін.)
ACJ

0

У моєму випадку Windows не виробила перехоплювачі належним чином. Я склав код у своїй ОС Windows і скопіював код у свій контейнер докера. Я припускаю, що проблема є проблемою шляху. Дивіться тут

Моя версія Magento була 2.3.3


0

Це працювало для мене!

php bin/magento config:set web/unsecure/base_url http://example.local/ 
php bin/magento config:set web/secure/base_url https://example.local/ 
php bin/magento config:set web/secure/use_in_adminhtml 1

-1

Перевірте, чи у вашому nginx / apache налаштовано з'єднання SSL. Після того, як ви поставили галочку підключення SSL для доступу адміністратора і у вас немає налаштування SSL, він перенаправляється на стандартне http: // з'єднання і повертається до https: //. Ось чому є петля.

У nginx має бути щось подібне:

server {
    listen 80;
    listen 443 ssl;
    server_name test.com;
    set $MAGE_ROOT /storage/test.com;
...

Де ОП згадувала nginx? Де ви змінили цю конфігурацію і чому? Що це робить?
MrUpsidown

-1

Спробуйте скористатися цим виправленням .htaccess

############################################
SetEnvIf HTTPS On HTTPS=on
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.