Los scripts personalizados del lado del servidor no se ejecutan en el directorio de medios pub

Este artículo proporciona una corrección para los casos en los que los scripts personalizados del lado del servidor no se ejecutan si se colocan en ./pub/media/ de la aplicación de Adobe Commerce en la infraestructura de la nube. Se trata de una limitación de seguridad esperada, ya que ./pub/media/ el directorio es editable. Para hacer que las secuencias de comandos sean ejecutables, colóquelas en directorios no grabables, como ./app/code/ o ./pub/.

Versiones afectadas

  • Adobe Commerce en la infraestructura en la nube: 2.1.x y versiones posteriores, Starter y Pro planifican la arquitectura, las arquitecturas Wings y las arquitecturas heredadas

Problema: scripts no ejecutados

Los scripts personalizados del lado del servidor no se pueden ejecutar cuando se inician.

Por ejemplo, cuando el usuario final (comprador de Adobe Commerce) hace clic en el vínculo que lleva a \*.php con el script (como domain.com/media/directory/script.php ), el script se está descargando en lugar de ejecutarse.

Causa: ubicación incorrecta del archivo de script

El problema se produce cuando los archivos de script se encuentran en ./pub/media/ directorio de la aplicación de Adobe Commerce en la infraestructura en la nube. Este es un comportamiento esperado: debido a limitaciones de seguridad, los archivos de los directorios grabables (./pub/media/) nunca se ejecutan.

Solución: coloque secuencias de comandos en directorios no grabables

Almacene los scripts del lado del servidor en directorios no grabables, como ./app/code/ o ./pub/ "

Documentación relacionada

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