O painel de administração do Magento 2 permanece para sempre até a atualização da página

13

Desde que trabalhei com o Magento 2, tenho repetidamente esse problema irritante:

  1. Faço login no painel de administração ou alterno para uma página diferente dentro do painel de administração
  2. A página começa a carregar, às vezes aparece parcialmente, mas trava para sempre (pelo menos por alguns minutos), às vezes aparece completamente, mas o navegador ainda indica "carregando" e a navegação não funciona, mas não vejo falha ou execução solicitações no console do navegador.
  3. Se eu pressionar F5enquanto estiver travando, a página será carregada quase instantaneamente (pelo menos na maioria das vezes)

Ele não parece estar relacionado a nenhum evento, porque eu recebo esse comportamento mesmo sem ter feito alterações no painel de administração, nem no código, apenas navegando. No entanto, observei uma possível correlação com caches invalidados .

Alguma idéia do que poderia causar esse problema? Não acredito que sejam os problemas típicos com permissões ou cookies, porque, de um modo geral, o painel de administração funciona.

O Magento está sendo executado no modo de desenvolvedor no Linux.

Fabian Schmengler
fonte
1
Tenho exatamente o mesmo problema, nunca tive tempo para perguntar, estou feliz que você fez. Qual versão do PHP você está executando? Estou executando a versão 5.6. E tenho certeza de que está relacionada. Lotes ouviu falar de pessoas me disseram que M2 foi incredibely lento quando não estiver executando PHP 7
Raphael em Digital pianismo
1
PHP 5.5, seria interessante saber se alguém teve esse problema com o PHP 7
Fabian Schmengler
1
Estou usando o PHP 7 e enfrento o mesmo problema
Reena Parekh 15/16
1
Alan Storm sugeriu isso, talvez não relacionado: magento.stackexchange.com/questions/3720/…
Raphael no Digital Pianism
1
Tenho algum problema com o Magento 2.0.4 em execução no Vagrant (Ubuntu 14.04 / PHP 5.5.9 / MySQL 5.6.28) :(
Siarhey Uchukhlebau

Respostas:

3

ATUALIZAR

Parece que atualizar o Firefox para 46 corrige o problema!

Investigações originais

Como também estou enfrentando esse problema irritante, decidi experimentá-lo.

Configuração

  • Ubuntu Server 12.4
  • PHP 5.5.30
  • MySQL 5.6.27
  • Instalação nova do Magento 2.0.4 sem amostra
  • Modo de desenvolvedor com cache desativado

Replicando o problema

À primeira vista, esse problema me pareceu totalmente aleatório. No entanto, após vários testes, consegui descobrir exatamente como replicar o problema.

Navegador

Primeiro, não consegui replicar o problema no Google Chrome, no Internet Explorer 11 nem no antigo Windows Safari 5.2.17. Estou usando principalmente o FireFox (45.0.2) e raramente uso o Google Chrome. Mesmo depois de descobrir exatamente como replicar o problema, não consegui replicar no Chrome.

Guias

Você precisa ter várias guias abertas no FireFox para poder replicar o problema.

Passos

  1. Abra o painel de administração e faça o login
  2. Quando estiver no painel, clique em qualquer item do menu. Costumo clicar no ícone do painel novamente
  3. Assim que você clicar no item de menu, clique em uma das guias abertas e continue navegando na Internet enquanto espera o painel de administração concluir o carregamento (com base no ícone giratório ao lado do título da guia)
  4. Infelizmente, você nunca conseguirá carregar essa página.

Investigação

Portanto , parece que quando o cliente não está focado na guia do Painel de Administração, o Magento 2 parece não carregar todos os recursos para o site carregar completamente .

O que eu notei, quando voltei para a página do painel de administração de carregamento infinito, era que havia muitos recursos que foram carregados com sucesso.

Como Fabian disse, nenhum erro no console, nenhum recurso ainda carregando e nenhum recurso que falhou ao carregar. Tudo parecia que a página terminou de carregar.

No entanto, ao clicar no botão parar de carregar do Firefox (o X na barra de URL), notei que vários recursos foram adicionados na guia rede que não estavam aqui quando a página estava no estado de carregamento infinito

OBSERVAÇÃO: a captura de tela abaixo é apenas para o painel, notei que mais recursos foram carregados após clicar no botão parar de carregar nas páginas de configuração, por exemplo.

insira a descrição da imagem aqui

Portanto, para a página Painel, esses recursos foram adicionados depois que eu cliquei no botão parar de carregar.

Quando a página é carregada normalmente, não mudando para outra guia, os seguintes recursos são carregados após o carregamento do DOM (suponho via AJAX), você pode observar a linha cinza mais espessa entre esses e os recursos acima:

insira a descrição da imagem aqui

Portanto, por algum motivo, os seguintes recursos são carregados automaticamente quando a página está no estado de carregamento infinito, mas são carregados após o carregamento do DOM quando a página é carregada corretamente:

  • /static/adminhtml/Magento/backend/en_US/Magento_Ui/templates/modal/modal-popup.html
  • /static/adminhtml/Magento/backend/en_US/Magento_Ui/templates/modal/modal-slide.html
  • /static/adminhtml/Magento/backend/en_US/Magento_Ui/templates/modal/modal-custom.html
  • /static/adminhtml/Magento/backend/en_US/mage/apply/scripts.js

Foi assim que cheguei na minha tarefa de depuração. Acho que ainda podemos fazer muito para testar e restringir o problema, mas não tive tempo para fazer mais testes, voltarei a ele quando tiver tempo.

Investigações adicionais

Então eu acabei instalando o plugin HTTPFox no meu FireFox.

Aqui está o que recebi quando cliquei no botão parar de carregar após 1 minuto de carregamento (você pode ver que jquery.storageapi.min.jstem 59s na coluna de tempo). As linhas destacadas são os recursos que foram carregados depois que eu parei o carregamento:

insira a descrição da imagem aqui

Tentei atualizar a biblioteca jquery.storageapi com a última versão disponível no GitHub, mas infelizmente não parece corrigir o problema.

Como o carregamento do favicon foi o próximo na lista, comentei o código adicionando o favicon à cabeça, mas também não resolveu o problema.

Tentei depurar o domReady.jsarquivo, pois seu nome parece ser a falha, mas não há chance.

Também aqui estão os dois access.logarquivos:

Ainda não consigo descobrir o que está acontecendo aqui.

Atualizar

Recentemente, fiz duas alterações na minha instalação:

  • atualize o FireFox para 46.0
  • atualizar de 2.0.4 para 2.0.5

Agora não consigo mais replicar o problema.

Raphael na Digital Pianism
fonte
1
Você tentou ver se há bloqueio de simultaneidade de arquivos de sessão devido a essas chamadas ajax em segundo plano? Alguns arquivos js usam dados de chamadas ajax e armazenam informações em cookies sobre ele e revertem. codingexplained.com/coding/php/… Tenho Redis e Memcache no dev dev e parece que o problema se foi.
obscurecer
@obscure obrigado pela sua opinião Vou verificar isso amanhã, mas duvido muito, pois funciona quando permaneço na guia admin e não quando navego em outra guia que não seja do Magento durante o carregamento
Raphael no Pianism Digital,
Parece que a atualização do Firefox até a versão 46 ajuda e não está conectada à versão magento. Você poderia, por favor, adicionar esta solução na parte superior da sua resposta para que fique visível de uma só vez.
Siarhey Uchukhlebau
@SiarheyUchukhlebau done;)
Raphael no Digital Pianism
1
Fosse o que fosse, nos navegadores atuais e nas versões mais recentes do Magento, isso não acontece mais, então vou marcar como aceito. Obrigado novamente por suas investigações.
Fabian Schmengler
0

No momento, estou enfrentando esse problema exato no M2.1.2 executando o php 7 em um servidor NGINX hospedado (2 núcleos, 2 GB de RAM) e uso o Chrome (54.0.2840.71 m (64 bits)).

Não fiz nenhum teste para encontrar a origem do problema, mas como essa era uma nova configuração do servidor, eu estava assumindo que era o meu servidor. Agora ... não tenho tanta certeza.

Agora, devo mencionar que atualmente estou executando o modo de desenvolvedor e ainda não compilei meu código. Então pode ser apenas isso.

Spyrule
fonte
0

de alguma forma relacionado quando eu atualizo um produto e mudo o firefox para uma nova guia para navegar e perder o foco na página magento, ele fica em modo de espera até voltar à página magento e depois finalizar a atualização desse produto, isso é uma coisa chata ... abro 3-4 produtos e quero trabalhar em outros produtos até que um finalize a atualização. conhece uma solução para esse problema?

Dan
fonte