Hoy he subido mi sitio al servidor y recibo errores como los siguientes:
No se puede generar la imagen derivada ubicada en public: //styles/sponsor_image/public/TerraThermaSponsorLogo.png.
Los estilos de imagen no pueden generar imágenes. Intenté establecer permisos en estilos / * carpetas con chmod -R 775 styles/, e incluso intenté chmod -R 777 styles/. El propietario de la carpeta está bien. No entiendo qué puede estar mal.
El directorio asociado con public: // es sites / default / files, y está bien.

www-data, pero aún recibo el error. ¿Qué más hago? ImageMagick está configurado correctamente, lo estoy ejecutando en un servidor que tiene muchas instalaciones de Drupal.También debe asegurarse de tener una biblioteca gráfica (como php-gd) instalada en su servidor: consulte / admin / config / media / image-toolkit (D7).
fuente
El error proviene del módulo de imagen (núcleo) y la lógica se ve así:
Por lo tanto, el error ocurre cuando Drupal tiene problemas para generar una derivada de la imagen aplicando todos los efectos de la imagen y guardando una versión en caché de la imagen resultante.
La forma más fácil de reproducir el problema (para fines de diagnóstico) es mediante borrado.
Invoque image_style_create_derivative () directamente desde drush:
Reemplace
picture-123.pngcon la imagen existente del registro:O use cualquier otro existente, por ejemplo
drush sqlq "SELECT * FROM file_managed".Si no tiene acceso a shell, use el módulo Devel, vaya
/devel/phpy pegue el código PHP allí.Nota: Si la
filescarpeta es propiedad de un usuario de Apache, debe iniciar sesión como este usuario con fines de prueba. De lo contrario, prefija su comando drush consudo -u www-data.Existen las siguientes posibilidades.
drush eval "print_r(gd_info());".Los problemas de permisos de depuración se pueden lograr fácilmente mediante
strace. Instálelo y simplemente prefija cualquier comando con el que esté probandostrace -f(no tiene que ser root).Por ejemplo:
Si ha iniciado sesión con una cuenta diferente que posee
files, no olvide prefijar su comando drushsudo -u www-datapara ejecutar todo el comando como usuario de Apache.fuente
Esto también puede deberse a que PHP se compila sin libjpeg (si las imágenes que no se generarán tienen fuentes jpeg). Verifique la salida de
gd_info()para ver si hay soporte PHP.fuente