IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Système] Création d'un fichier zip : exec retourne la valeur 12


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de lumbroso
    Inscrit en
    Décembre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2003
    Messages : 239
    Par défaut [Système] Création d'un fichier zip : exec retourne la valeur 12
    Bonjour,

    J'essaye actuellement de faire un zip de plusieurs fichier sans succès.

    Pour ce faire j'utilise la commande exec() et je lui passe en paramètre :
    "zip -r nom_du_zip.zip fichier1.jpg fichier 2.jpg"

    Je fais tout ça dans un dossier temp qui a bien tous les droits.

    Or la commande exec() ne semble pas s'éxecuter correctement. Enfin la commande exec() avec zip car sinon exec() à l'air ok.

    J'ai donc voulu connaitre le code de retour de exec() et j'obtiens 12.
    Après moultes recherches, 12 semblerait vouloir dire : Cannot allocate memory
    (D'après ce site : http://blog.idud.web.id/2007/06/gnul...ror-codes.html)

    Ce qui ne m'avance pas trop.

    Je pense que le problème vient de la config de l'hébergeur. En effet, j'ai fait une copie d'un site d'un domaine vers un nouveau domaine (le client change de nom). J'ai vérifié les 2 phpinfo de chaque site, et à part les informations relatives aux noms de domaines, ils sont identiques. Ce qui est plutôt normal car les 2 sites sont hébergés sur la même machine...

    La commande exec() avec zip marchait très bien sur l'autre site.

    Je ne sais plus trop par où chercher donc toute suggestion serait la bienvenue.

    Merci.

    EDIT : je viens de rafraichir ma page et j'ai maintenant un code d'erreur 127...

    EDIT : le problème venait en réalite du safe_mode qui était désactivé.

  2. #2
    Membre Expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    Bonjour,

    Si tu peux accéder à ton hébergement par ssh ou telnet, tu pourrais tester si elle marche en ligne de commande. Pour savoir si cela vient de php.

  3. #3
    Membre éclairé Avatar de lumbroso
    Inscrit en
    Décembre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2003
    Messages : 239
    Par défaut
    Citation Envoyé par jml94 Voir le message
    Bonjour,

    Si tu peux accéder à ton hébergement par ssh ou telnet, tu pourrais tester si elle marche en ligne de commande. Pour savoir si cela vient de php.
    Je viens d'essayer à l'instant en SSL via Putty et la commande fonctionne bien.

    Je vais me repencher sur mon code php du coup.

  4. #4
    Membre éclairé Avatar de lumbroso
    Inscrit en
    Décembre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Décembre 2003
    Messages : 239
    Par défaut
    J'ai beau copier le fichier qui fonctionnait bien sur le premier site, pas moyen de le faire fonctionner sur le 2ème...

    Toujours mon code d'erreur 127 sur l'output de exec().

  5. #5
    Membre Expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    J'ai trouvé ça : http://www.phpbuilder.com/board/show...php?t=10336847

    Et cette phrase m'interpelle particulièrement

    So it's possible that the user under which the exec() call is being made (possibly apache, rather than php) doesn't even have access to the shell.
    De même dans la doc passthru

    If you have chrooted apache and php, you will also want to put /bin/sh into the chrooted environment. Otherwise, the exec() or passthru() will not function properly, and will produce error code 127, file not found.

  6. #6
    Membre Expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    Peut-être une solution

    >here is some more info....
    >
    >i figured out the exec fails because php is running in safe mode. that is ok
    >when i am at home developing (i can turn it off) however when i go to upload
    >my app to my server which runs in safe mode.. what do i do then?
    >is there a way around this?
    >
    >i tried using the ini_set function to turn safe mode off but this appears not
    >to work
    >
    >suggestions would be great as this is driving me nuts!

    set *safe_mode_exec_dir *and put there your binaries

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 02/01/2015, 11h28
  2. Création d'un fichier ZIP
    Par dedepsg dans le forum Langage
    Réponses: 8
    Dernier message: 30/04/2009, 14h03
  3. [Zip] Création d'un fichier zip avec zip.lib.php corrompue
    Par fdthierry dans le forum Bibliothèques et frameworks
    Réponses: 8
    Dernier message: 02/06/2008, 14h01
  4. Réponses: 1
    Dernier message: 18/02/2008, 07h53
  5. Réponses: 7
    Dernier message: 09/05/2006, 16h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo