Forum dédié au moteur de recherche et aux techniques d'optimisation par #taggle
Vous n'�tes pas identifi�.
je sais que certains ici utilisent wget... je commence à comprendre pourquoi, quand j'abandonne 20mn de script php pour m'apercevoir qu'une ligne de wget fait tout
à savoir : recuperer une page web et ses fichiers dépendants (pplement css), et rien d'autre
en ligne de commande, ca passe bien :
/home/site/repertoiredestockage/wget --page-requisites --no-directories --directory-prefix=repertoirespecifique $this->url
mon seul souci est que sous php, je voudrais pouvoir spécifier ce repertoire (/home/site/repertoiredestockage/repertoirespecifique), mais que je n'arrive pas à le placer :
exec("wget --page-requisites --no-directories $this->url"); // erreur exec("wget --page-requisites --no-directories $this->url > /home/site/repertoiredestockage/repertoirespecifique"); // erreur exec("wget --page-requisites --no-directories --directory-prefix=/home/site/repertoiredestockage/repertoirespecifique $this->url"); // erreur exec("wget --page-requisites --no-directories --directory-prefix=repertoirespecifique $this->url"); // erreur //pour info echo exec('whoami'); // affiche 'www-data', et fonctionne
Derni�re modification par Malaiac (20-10-2007 15:04:00)
Hors ligne
bonne question, mais lequel ? index.php, le controleur, ou le module ?
si c le fichier qui contient le exec(), j'ai chmode 0777 la classe du module
toujours pareil
Hors ligne
le dossier dans lequel tu vas ecrire, et si il faut creer ce dossier a la volée, le repertoire qui le contient...
pas forcement besoin de mettre en 0777, mais au moins que le user apache ait les droits en lecture / ecriture (habituellement nobody ou www-data selon ta distrib linux)
Hors ligne
tiens y a un truc qui finit par marcher :
je fais :
exec($string,$result,$status); echo "<br />$string <br />resultat = $status <br /><pre>".print_r($result,1).'</pre>';
pour $string = "wget $url"; ca passe (c'est a dire que $status = 1)
mais pas pour $string = "wget --page-requisites --no-directories --directory-prefix=nomdurepertoire $url"; ce qui m'étonne pas, parce qu'il sait pas ou trouver le "nomdurepertoire/"
Hors ligne
euh, pour l'instant je le lance comme un script dans un back end
Hors ligne