Newsgroup: it.comp.www.php
Titolo: chiamata di sistema a gzip.. non va!

Buondi'.
Dovrei passare tramite PHP al sistema un comando "gzip" (con opportuni
argomenti). Consultando la documentazione, ho provato con i comandi "exec"
e "system" ma per entrambi il codice non mi da errore ma NON effettua
nulla (se immetto invece un comando come "ls" ad esempio viene eseguito
correttamente.
Es. exec("gzip fileprova.txt");
non da errore ma neanche fa nulla... sto sbagliando qualcosa (non sono
molto esperto sulle chiamate al sistema) ?
Grazie in anticipo
Marco
 
PS uso un server su cui ho accesso in shell, e ovviamente "gzip" e'
perfettamente abilitato...
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Es. exec("gzip fileprova.txt");
Secondo me ti manca il path.
Prova con
$gzfile = $_SERVER[DOCUMENT_ROOT] . "/path/to/file/fileprova.txt";
exec("gzip $gzfile");
Ted
-- 
Assumption is the mother of all fuckups
La supposizione e' la madre di tutte le caxxate
(Under Siege II: Dark Territory)
[Tessera #049 B.A.G. - #056 DPPSJ]

 Ted
Sfortunatamente (per me) non e' questo il problema.
La $_SERVER[DOCUMENT_ROOT] punta ad un'altra area (/home/apache/htdocs)
mentre io sono un utente "normale", coi i files in /home/marco/WEB.
Se lancio "ls -l" come argomento di $exec (senza dare paths)  mi fa la
lista corretta dei miei files, cosi' credo che non sia un problema di
path...
Grazie comunque,
-- 
Marco C.
Registered Linux User #306621


mcastell wrote:
 > Ted Striker wrote: Sfortunatamente (per me) non e' questo il
 > problema. La $_SERVER[DOCUMENT_ROOT] punta ad un'altra area
 > (/home/apache/htdocs) mentre io sono un utente "normale", coi i files
 > in /home/marco/WEB.
 >
 > Se lancio "ls -l" come argomento di $exec (senza dare paths)  mi fa
 > la lista corretta dei miei files, cosi' credo che non sia un problema
 > di path...
 >
 > Grazie comunque,
Capisco, avrai gia' provato a scrivere anche tutto per esteso tipo
exec("/bin/gzip ./fileprova.txt");
o
$gzname = realpath(".") . "/fileprova.txt";
exec("/bin/gzip $gzname");
altrimenti prova, tentar non nuoce!
Ciao e buona giornata


 Ted
Provato anche questo... provato anche a cambiare server (ho il mio PC dove
accendo Apache ogni tanto per fare delle prove). Nulla per ora... ma non
demordo!
Grazie e buona giornata anche a te,


 molto esperto sulle chiamate al sistema) ?
Molto probabilmente l'utente apache o nobody non hanno il permesso di fare
ciň che gli chiedi!
"ls" puň farlo...
Prova ad usare "system" che ti rende il risultato del comando mi pare!
--
Giornoł
Chiusura dell'interfaccia eth0: [ OK ]

demordo!
Che succede con
	system("gzip -h");
?
Leonardo

Scusate ma gzip gira come user "apache" o "nobody" visto che e` eseguito
da php tramite apache, molto probabilmente non ha i permessi per scrivere
nella directory che contiene il file da comprimere e fallisce.
Un "chmod o+w {directory}" dovrebbe bastare (attenzione che cosi` facendo
chiunque, loggato in locale sulla macchina, puo` scrivere e cancellare in
quella directory).
 
Ciao,
Marco
-- 
//\/\ Marco (LM) Lamberto
      e-mail:            
marcol...@despammed.com
      SIForge.org     -  
http://www.siforge.org/

:
 >
 > Molto probabilmente l'utente apache o nobody non hanno il permesso di
 >  fare ciň che gli chiedi! "ls" puň farlo...
 >
 > Prova ad usare "system" che ti rende il risultato del comando mi
 > pare!
Si, mi hai rubato le parole di bocca, in effetti.
Se Marco ha una login i file che carica sono suoi, non dell'utente di
Apache.
Questo significa che o rende i files e la directory word writable (ma
evidentemente non e' il caso...) o, piu' semplicemente,
copia il file, se www puo' scrivere in quella dir e zippa quello.
Ciao
Ted
-- 
Assumption is the mother of all fuckups
La supposizione e' la madre di tutte le caxxate
(Under Siege II: Dark Territory)
[Tessera #049 B.A.G. - #056 DPPSJ - #011 MDZIS (f.p.)]

nella directory che contiene il file da comprimere e fallisce.
Appunto. In questo caso "gzip -h" funzionera'. Se non funzionasse, sapremo
che ci sono delle limitazioni su gzip tout court, e li' saranno cavoli.
Leonardo
-- 
Time's angles, mages tell, conceal a place
incredible, beyond the mundane mind;
night-shrouded and between the seas of space
dread creatures drift in the ageless winds.

 Ted
Grazie ragazzi per tutta la discussione...!
Faccio le prove indicate appena posso, e vi faccio sapere.
Saluti,
-- 
Marco Castellani
Registered Linux User #306621
