
Tengo Ghostscript, ImageMagick e IIS 5.0 instalados en una caja de Windows 2008 Server.
También tengo un script PHP que ejecuta un script de conversión para generar miniaturas de un PDF que se carga en un directorio:
<?php
$output = array();
$ret = 0;
echo exec('convert D:\content\myfile.pdf[0] D:\content\myfile_thumb_1.jpg', $output, $ret);
var_dump($ret);
?>
He determinado que el problema es que el script, cuando se llama desde el navegador web, se ejecuta como usuario IUSR_[COMPUTERNAME].
Como mi cuenta de administrador, el comando se ejecuta correctamente desde la línea CMD (duh).
¿Qué permisos tengo que cambiar para permitir que el usuario del script/IUSR genere la miniatura?
Intenté cambiar los permisos en lo siguiente:
- El directorio de archivos de programa GhostScript (que permite ejecutar, escribir y leer)
- El directorio ImageMagick (que permite ejecutar, escribir, leer)
- El directorio de carga donde residen las miniaturas (permitiendo lectura y escritura)
Todo a través del Explorador de Windows, haciendo clic derecho en el directorio, propiedades y luego en la pestaña Seguridad. Agrego los permisos a [COMPUTERNAME]/Invitados, porque IUSR_[COMPUTERNAME] está en el grupo Invitados.
No estoy lo suficientemente familiarizado con IIS o Windows para saber esto, pero ¿tengo que reiniciar el cuadro para actualizar los permisos o debería funcionar después de aplicar los cambios? Itenerreinició el servicio IIS.
Nota: eliminé el nombre completo de la computadora y lo reemplacé con [NOMBRE DE LA COMPUTADORA] en la publicación anterior.