Я тестирую свой собственный модуль на Magento CE 2.2.0, но получаю сообщение «Страница перенаправляется неправильно». Глядя на сетевой трафик, я вижу эти запросы:
- / Magento22-acumulus / администратор /
- / Magento22-acumulus / админ / админ / индекс / отказано /
- / Magento22-acumulus / администратор / администратор / авт / Логин /
- / Magento22-acumulus / админ / админ /
- / Magento22-acumulus / админ / админ / индекс / отказано /
- / Magento22-acumulus / администратор / администратор / авт / Логин /
- / Magento22-acumulus / админ / админ /
- / Magento22-acumulus / админ / админ / индекс / отказано /
- / Magento22-acumulus / администратор / администратор / авт / Логин /
- / Magento22-acumulus / админ / админ /
- ...
Моя настройка:
- локальная установка на базовый URL / magento22-acumulus /
- Wampserver 3.0.8 с php 7.0.10 и Apache 2.4.23
Что я сделал:
- установить Magento 2.2.0 с примерами данных
- настройки изменены: удалите секретный ключ и используйте стандартный admin / url
- проверил это: я получаю экран входа
- установить мой модуль, модуль: включить, настроить: обновить, настроить: di: compile
- проверил: ошибка, как указано выше
- модуль: отключить, кеш: очистить, настройка: di: compile
- проверил это: я получаю экран входа
- повторил это несколько раз, один и тот же шаблон, поэтому я подумал, что это связано с моим модулем.
- Но потом однажды у меня заработал модуль, и я смог перейти на свои собственные страницы. К сожалению, ошибка вернулась, поэтому я продолжил отладку, включив и отключив модуль, но не смог найти проблему
- и теперь я также получаю проблему без моего модуля включен. Так что я думаю, что это странное условие / ошибка в самом Magento.
В чем может быть проблема здесь?
admin
magento2.2
fietserwin
источник
источник
Ответы:
Я не уверен, что это ошибка в процессе компиляции или что-то не так с кодом модуля. В моем случае компиляция Magento неправильно создавала перехватчик для класса в моем модуле (без фактического определенного конструктора), который расширял другой класс другого модуля, который расширял класс из ядра Magento (оба с определенными конструкторами). Это также создавало пустую страницу во внешнем интерфейсе, помимо упомянутых вами проблем. После нескольких новых установок Magento 2.2, а также Magento 2.1 с той же проблемой, это сработало для меня:
источник
Поскольку вы используете Apache, я предлагаю вам включить RewriteLog. Затем повторить проблему и еще раз проверить логи.
источник
На прошлой неделе я снова попытался установить чистую среду M2.3.4 (с примерами данных), и, похоже, она работает. За исключением того, что после установки: di: compile эта проблема появилась снова. Однако удаление сгенерированного кода из / generate / code заставило его снова работать ... Так что это может быть проблемой в генераторе или некотором коде, который проверяет тип объекта и не обслуживает сгенерированные классы перехватчиков. ,
@Gabriel MdS ответил более или менее на то же самое, но для меня это также произошло, когда мой собственный модуль еще не был установлен, поэтому у меня была только чистая установка с примерами данных.
Таким образом, не окончательный ответ или решение, но, безусловно, вместе с ответом @Gabriel MdS, сильный намек на процесс генерации.
источник
Я знаю, что это старый шаг, но он занял первое место в моем поиске Google. Ни один из этих ответов не помог мне, но я столкнулся с той же проблемой и смог ее решить. Моя настройка использует обратный прокси. За прокси я использую http (не-ssl), а до прокси разрешен только https (ssl). Это вызвало мою проблему с перенаправлением.
Решение: добавьте следующую строку (сразу после комментариев) в pub / index.php
$ _SERVER [ 'HTTPS'] = 'на';
источник