Bonjour,
J'ai développé un script qui me permet de créer un export statique d'un site à partir de l'outil httrack disponible sous UNIX (serveur sous Ubuntu).
J'ai écrit le code suivant :
$ouput renvoie Array(),
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 $destination = '/var/www/mysite_copy'; $url = 'http://user:pwd@mysite.com'; $command = '/usr/bin/httrack '.$url.'/ -W -O "'.$destination.'" --robots=0'; exec($command, $output = array(), $errors); $return = ' <p>Export des contenus de '.$url.' en cours vers '.$destination.', veuillez patienter quelques minutes</p> <p> En cas d\'erreur, veuillez fournir les informations suivantes au Webmaster <br/> Commande : '.$command.'<br/> Sortie : '.print_r($output, TRUE).'<br /> Erreurs : '.print_r($errors, TRUE).' </p> ';
$errors renvoie toujours 255
$errors renvoie 1 si je met httrack au lieu de /usr/bin/httrack
Je ne parviens pas à trouver une documentation détaillée des erreurs systèmes linux, enfin, cela s'arrête toujours à 127.
Lorsque j'execute la commande directement depuis la console, cela fonctionne.
Peut-être que l'utilisateur d'Apache n'a pas les droits d'execution ? Comment le savoir ?
J'ai tenté d'utiliser les fonctions passthru, system et shell_exec et le résultat est le même.
Avez-vous une idée ?
edit : je précise qu'executer une commande telle que "ls -n" fonctionne très bien.
Partager