Erro Magento 2.2 "A página não está redirecionando corretamente"


10

Estou testando meu próprio módulo no Magento CE 2.2.0, mas continuo recebendo "A página não está redirecionando corretamente". Olhando para o tráfego de rede, vejo estes pedidos:

  • / magento22-acumulus / admin /
  • / magento22-acumulus / admin / admin / index / denied /
  • / magento22-acumulus / admin / admin / auth / login /
  • / magento22-acumulus / admin / admin /
  • / magento22-acumulus / admin / admin / index / denied /
  • / magento22-acumulus / admin / admin / auth / login /
  • / magento22-acumulus / admin / admin /
  • / magento22-acumulus / admin / admin / index / denied /
  • / magento22-acumulus / admin / admin / auth / login /
  • / magento22-acumulus / admin / admin /
  • ...

Minha configuração:

  • instalação local na base url / magento22-acumulus /
  • Wampserver 3.0.8 com php 7.0.10 e Apache 2.4.23

O que eu fiz:

  • instale o Magento 2.2.0 com dados de amostra
  • configurações alteradas: remova a chave secreta e use admin / url padrão
  • testei: recebo a tela de login
  • instalar meu módulo, module: enable, setup: upgrade, setup: di: compile
  • testou: erro como acima
  • módulo: desativar, cache: limpar, instalação: di: compile
  • testei: recebo a tela de login
  • repeti isso várias vezes, mesmo padrão, então eu estava pensando que tinha a ver com o meu módulo.
  • Mas então consegui meu módulo funcionando uma vez e pude ir para minhas próprias páginas. Infelizmente, o erro voltou, por isso continuei fazendo algumas depurações ativando e desativando meu módulo, mas não consegui localizar o problema
  • e agora também recebo o problema sem o meu módulo ativado. Então eu acho que é alguma condição / bug estranho no próprio Magento.

Qual poderia ser o problema aqui?


se você tem solução por favor postar sua resposta
Lalit Mohan

Infelizmente ainda não. Parei de testar meu módulo no MA2.2 e agora apenas o teste no MA2.1. Meu módulo é usado pelos clientes no MA2.2, por isso há mais motivos para acreditar que não é um erro na configuração, nas configurações ou no código do meu módulo. Se, eventualmente, eu encontrar uma solução, eu a publicarei.
fietserwin

Eu tenho o mesmo problema. Descobri há problema com o meu módulo de classe auxiliar .. Você deve fazer o checkout seus módulos, um por um .. disable para descobrir qual o erro causa ..
Lalit Mohan

você pode compartilhar imagem o que você recebe erro exato?
Sarvesh Dineshkumar Patel

você tentou uma versão nova e sem adicionar extensões ou então?
Sarvesh Dineshkumar Patel

Respostas:


1

Não tenho certeza se isso é um bug no processo de compilação ou algo errado com o código do módulo. No meu caso, a compilação do Magento estava criando incorretamente um interceptador para uma classe no meu módulo (sem um construtor definido real) que estendeu outra classe de outro módulo que estendeu uma classe do núcleo Magento (ambos com construtores definidos). Isso também estava criando uma página em branco no frontend, além dos problemas que você mencionou. Após várias novas instalações do Magento 2.2 e também do Magento 2.1 com o mesmo problema, isso funcionou para mim:

  • Ativar modo de desenvolvedor: php bin / magento deploy: mode: set developer
  • Instale seu módulo (envie / copie arquivos) e execute php bin / magento setup: upgrade
  • Em vez de executar o processo de compilação (necessário apenas quando a ordem dos argumentos do construtor é alterada ou os tipos de argumento são alterados), basta excluir a pasta / gerada / código / YOURMODULENAMESPACE

0

Como você está usando o Apache, sugiro que você ative o RewriteLog. Em seguida, replique o problema e verifique os logs novamente.

RewriteLog "logs\rewritelog.txt"    
RewriteLogLevel 3

Obrigado pela sua resposta, mas o que isso poderia me aprender? Eu já tentei depurar, então eu sei que cada solicitação redirecionada é processada pelo Magento. Não vejo como o Apache entra em cena?
21718 fietserwin

Magento não é um servidor web. O servidor web apache usa redirecionamentos. Portanto, como o erro é sobre um redirecionamento, o primeiro local a procurar é o que está fazendo o apache. Você tem 50% de alterações para ver que o apache faz um redirecionamento estranho (http-para-https ou semelhante) e 50% para ver que o magento instrui o apche a redirecionar de uma maneira estranha, talvez como não www para www ou vice-versa.
X86fantini

Magento retorna as instruções de redirecionamento para o navegador. Não há problema de http versus https (como em muitos outros relatórios sobre redirecionamentos infinitos do MA2.2), nem www versus não-www, pois esse é o localhost. Os redirecionamentos são para as páginas conforme descrito na pergunta.
22718 fietserwin

0

Na semana passada, tentei novamente instalar um ambiente M2.3.4 limpo (com dados de amostra) e, hoora, parece funcionar. Exceto que, depois de fazer uma instalação: di: compile, esse problema apareceu novamente. No entanto, remover o código gerado de / generate / code fez com que funcionasse novamente ... Portanto, pode haver um problema no gerador ou algum código que verifique o tipo de um objeto e não atenda às classes de interceptores geradas. .

O @ Gabriel MdS respondeu mais ou menos a mesma coisa, mas para mim também aconteceu quando meu próprio módulo ainda não estava instalado, então eu só tinha a instalação limpa com dados de amostra.

Portanto, não é uma resposta ou solução definitiva, mas, certamente, junto com a resposta de @Gabriel MdS, uma forte dica para o processo de geração.


0

Sei que este é um passo antigo, mas ficou em primeiro lugar na minha pesquisa no Google. Nenhuma dessas respostas me ajudou, mas tenho o mesmo problema e consegui resolvê-lo. Minha configuração usa um proxy reverso. Por trás do proxy, uso http (não-ssl) e antes do proxy apenas https (ssl) é permitido. Isso causou meu problema de redirecionamento.

Solução: adicione a seguinte linha (logo após os comentários) a pub / index.php

$ _SERVER ['HTTPS'] = 'ativado';

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.