Os scripts personalizados do lado do servidor não são executados no diretório de mídia pub
Este artigo fornece uma correção para quando scripts personalizados do lado do servidor não são executados se forem colocados no diretório ./pub/media/
de seu aplicativo Adobe Commerce na infraestrutura da nuvem. Esta é uma limitação de segurança esperada, pois o diretório ./pub/media/
é gravável. Para tornar os scripts executáveis, coloque-os em diretórios não graváveis, como ./app/code/
ou ./pub/
.
Versões afetadas
- Adobe Commerce na infraestrutura em nuvem: 2.1.x e posterior, Starter e Pro planeja arquiteturas, Wings e herdadas
Problema: scripts não executados
Os scripts personalizados do lado do servidor não podem ser executados quando iniciados.
Por exemplo, quando o usuário final (comprador do Adobe Commerce) clica no link que leva ao arquivo \*.php
com o script (como domain.com/media/directory/script.php ), o script está sendo baixado em vez de ser executado.
Causa: local incorreto do arquivo de script
O problema ocorre quando os arquivos de script estão localizados no diretório ./pub/media/
do aplicativo Adobe Commerce na infraestrutura em nuvem. Este é um comportamento esperado: devido a limitações de segurança, os arquivos dos diretórios graváveis (./pub/media/
) nunca são executados.
Solução: coloque scripts em diretórios não graváveis
Armazene os scripts do lado do servidor em diretórios não graváveis, como ./app/code/
ou ./pub/
"
Documentação relacionada
- Nuvem para Adobe Commerce > Estrutura de projeto > Diretórios graváveis em nossa documentação do desenvolvedor.