Ativos minificados não encontrados ou gerados durante a fase de compilação
Na Adobe Commerce Cloud, os ativos minificados retornam um erro 404 após a implantação devido a problemas no sistema de arquivos ou à configuração inadequada de arquivos .magento.env.yaml ou config.php. Para corrigir isso, verifique as permissões de arquivo para garantir que elas sejam acessíveis pelo servidor Web e verifique se os arquivos .magento.env.yaml e app/etc/config.php estão configurados corretamente para o seu ambiente.
Descrição description
Ambiente
Adobe Commerce Cloud
Problema/Sintomas
Depois de concluir uma implantação de site, determinados ativos minificados ficam inacessíveis, por exemplo, https://yourdomain.com/static/frontend/Namespace/theme/default/en_US/requirejs/require.min.js retorna 404. Isso acontece devido a:
-
Problemas do sistema de arquivos que impedem a sincronização do arquivo em todos os nós da Web.
-
Configuração imprópria do arquivo
.magento.env.yamlouconfig.php.- SCD na Compilação requer que as configurações de minificação de ativos sejam salvas em
app/etc/config.phppara entrarem em vigor. - As configurações de SCD (consulte variáveis de ambiente) não estão definidas ou foram adicionadas no estágio correto do arquivo
.magento.env.yaml.
- SCD na Compilação requer que as configurações de minificação de ativos sejam salvas em
Resolução resolution
Para resolver o problema:
-
Primeiro, verifique as permissões de arquivo dos ativos afetados para garantir que eles sejam acessíveis pelo servidor Web.
- Adicione SSH a cada nó da Web e verifique se o ativo existe em todos os nós da Web. (Observação: em uma arquitetura não dividida, haverá apenas três nós. Em uma arquitetura de divisão, os três primeiros nós serão nós de serviço, mas possivelmente haverá mais.) Para o nó X:
magento-cloud ssh -p <cluster_id> -I X - Quando você estiver no nó X, execute este comando e verifique as permissões:
ls -la pub/static/frontend/Namespace/theme/default/en_US/requirejs/require.min.js(Observação: Substitua o nome de arquivo no comando pelo nome real do ativo que retorna um erro 404). - Se o arquivo existir em alguns nós, mas não em outros, envie uma solicitação de suporte com o Motivo do Contato definido como Incidente de Infraestrutura.
- Adicione SSH a cada nó da Web e verifique se o ativo existe em todos os nós da Web. (Observação: em uma arquitetura não dividida, haverá apenas três nós. Em uma arquitetura de divisão, os três primeiros nós serão nós de serviço, mas possivelmente haverá mais.) Para o nó X:
-
Em seguida, se o arquivo não existir em todos os nós, confirme se os arquivos
.magento.env.yamleapp/etc/config.phpestão configurados corretamente para o seu ambiente.-
Em qualquer um dos nós da Web, primeiro execute este comando:
vendor/bin/ece-tools wizard:scd-on-build -
Se o comando acima retornar SCD na compilação habilitada, execute este comando para verificar se as configurações de minificação de ativos estão habilitadas:
grep -r minify_files app/etc/*.php. (Observação: substitua o nome de arquivo no comando pelo nome de ativo real que está retornando um erro 404). Se o comando não retornar nenhuma linha, significa que a minificação está desativada. Um valor de0indica que o item está desabilitado, e1significa que está habilitado. -
Se não houver linhas retornadas:
- Execute o comando
config:dumppara salvar a configuração de minificação emapp/etc/config.php(consulte Definir o SCD na compilação). - Faça commit no repositório.
- Reimplante a instância.
- Execute o comando
-
Se qualquer uma das configurações de minificação de ativos tiver um valor de
0, ele deverá ser minificado:- Atualize o valor em
app/etc/config.phppara1. - Faça commit no repositório.
- Reimplante a instância.
- Atualize o valor em
-
Verifique o arquivo
.magento.env.yamle certifique-se de que você adicionou a Variável de ambiente do SCD no estágio adequado:- SCD na Compilação: A variável de compilação deve ser colocada no estágio
build:. - SCD na implantação: A variável de implantação deve ser colocada no estágio
deploy:. - Depois de garantir que a variável tenha sido adicionada no estágio apropriado, confirme o arquivo no repositório e reimplante a instância.
- SCD na Compilação: A variável de compilação deve ser colocada no estágio
-
-
Por fim, teste o acesso aos URLs afetados depois de fazer ajustes.
Se os problemas persistirem após a execução dessas etapas, entre em contato com o Suporte da Adobe, pois pode ser necessária uma investigação mais aprofundada dos logs do servidor ou definições de configuração adicionais.