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

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a