Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : safe_mode_exec_dir [ Server Web / Apache ] (sahliali)

mercredi 2 juillet 2008 à 13:07:34 | safe_mode_exec_dir

sahliali

Bonjour,

J'ai un problème avec la configuration et l'exécution d'un code en utilisant la fonction exec.
En fait j'ai configurer mon fichier PHP.ini en
safe_mode = off
safe_mode_exec_dir = ".;${path}\php\command\"  
l'emplacement ou je veux exécuter un fichier tracert.php qui contient le code suivant

exec("tracert www.google.fr", $tableau);
foreach($tableau as $row)
{
echo $row;
echo "<br />";
}

le problème comment je fait appel à ce fichier, sachant que je veux que le temps d'exécution peut dérouler plusque que 30 seconde, c'est pour cela que j'utilise le safe_mode = off et je spécifie l'emplacement des commandes à exécuter.

Merci.


mercredi 2 juillet 2008 à 15:56:30 | Re : safe_mode_exec_dir

neigedhiver

Salut,

Si tu désactives safe_mode, inutile de configurer safe_mode_exec_dir, cette directive ne sera pas prise en compte.

Si tu veux simplement augmenter le temps maximum d'exécution d'un script, il te suffit non pas de désactiver safe_mode.
Quitte à modifier la configuration de PHP, autant simplement augmenter le temps d'exécution : max_execution_time
Si tu veux pouvoir modifier cette valeur dans tes scripts, alors oui, il faut que safe_mode soit désactivé et utiliser la fonction set_time_limit()


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...

mercredi 2 juillet 2008 à 15:58:05 | Re : safe_mode_exec_dir

neigedhiver

Tiens, j'me suis pas relu et y'a une phrase qui veut pas dire grand chose... :/


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...

mercredi 2 juillet 2008 à 18:56:37 | Re : safe_mode_exec_dir

sahliali

Merci pour votre reponse, mais je sais pas le temps d'exécution du processus, le processus peut prendre un jours ou meme plus d'exécution, c'est  pour ca que j'ai penser à  configurer le safe_mode_exec_dir et safe_mode = On,  comme décrit dans le manuel de exec ( ici )

jeudi 3 juillet 2008 à 10:29:14 | Re : safe_mode_exec_dir

neigedhiver

Salut,

Quelques précisions me paraissent nécessaires.

PHP ne permet pas l'exécution d'un script sur une durée illimitée : il y a FORCEMENT une limite de temps, fixée par la configuration. Ca, on ne PEUT PAS y échapper.
Donc : on peut tout à fait autoriser, dans la config de PHP, une durée d'exécution très longue ; mais cette durée est nécessairement déterminée, et ne peut en aucune cas être illimitée

Il est dit dans la doc : "Lorsque le safe mode est activé, vous pouvez uniquement exécuter des programmes qui se situent dans le dossier défini par safe_mode_exec_dir."
Cela ne signifie ABSOUMENT PAS que pour exécuter un programme externe, il faille obligatoirement activer safe_mode ! AU CONTRAIRE ! La doc explique que SI safe_mode est activé, alors seuls les programmes se trouvant dans le répertoire défini par safe_mode_exec_dir dans la configuration de PHP pourront être exécutés.
Si safe_mode n'est pas activé, cette limitation n'existe pas. Sur un hébergement personnel, on peut (on doit ?) désactiver safe_mode pour permettre l'exécution de programmes externes que l'on veut sans contrainte de répertoire.


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...

jeudi 3 juillet 2008 à 13:24:05 | Re : safe_mode_exec_dir

sahliali

Ok, la je comprend bien, donc la solution que je propose de faire un script sh qui va faire la tache en arrière plan, mais mon problème c'est ou je doit mettre le script pour que la fonction exec lui fais appel, et aussi comment je peut savoir la fin d'éxecution du script.
exemple :
$id = exec("monscript.sh");
if($id == "0")
// script en cours d'exécution
else
// fin de script

jeudi 3 juillet 2008 à 14:21:19 | Re : safe_mode_exec_dir

neigedhiver

Réponse acceptée !
Si safe_mode n'est pas activé, exec() peut exécuter un exécutable qui se trouve n'importe où, pour peu que les permissions le permettent.

Le mieux est de ne pas attendre la fin de l'exécution du script, de rediriger la sortie de celui-ci dans un fichier, et d'en vérifier le contenu.


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...



Cette discussion est classé dans : fichier, safe, mode, dir, exec


Répondre à ce message

Sujets en rapport avec ce message

safe_mode_exec_dir [ par repier ] Bonjour,Je voudrais savoir comment specifier plusieurs dossiers avec safe_mode_exec_dirMerci de votre aidePierre classement fichiers par date! [ par abdellah1505 ] Bonsoir,j'ai un code php qui permet de lister 3 fichiers qui ce trouve dans un dossier et je voulais savoir si il est possible de trier ses 3 fichiers inclure un fichier html en html [ par niko14 ] hello tout le monde!Voila mon probleme je fais un mode opératoire pour l'utilisation du site que je viens de créer!Mais le "probleme" c'est que ce mod Listage d'un repertoire / Un truc m'échappe [ par gorbfr ] Bonjour,J'ai ce code qui fonctionne bien :function lire_dossier($dir){  $dossier=opendir($dir);  while($fichier=readdir($dossier))  {    $ignore=array opendir [ par jphilippev ] bonjour j'ai pris un code du manuel php pour ouvrir un dossier (opendir)et en début de boucle il me renvoirfichier : .fichier : ..</font Test si c'est un repertoire ou un fichier !! [ par rich25200 ] Bonjour, Je comprends rien !! enfin bon si mais je sais pas pk il reagit comme ca.... Je vous explique j'ai du code pour tester si c'est un repertoi !!!! UPLOAD !!!! [ par funghi ] Salut à tous !!!J'ai un tit pb avec un upload, je sens que j'y suis presque, mais ca ne marche tjs pas !!!Voici le bout de code qui ne marche pas :$re problem SAFE MODE Restriction in effect [ par skiso ] Warning: file_exists() [function.file-exists]: SAFE MODE Restriction in effect. The script wh easyphp aurait des lacunes ? [ par Teclis01 ] Voila je viens exposer mon petit probleme ...je pensais faire un petit explorateur de fichier pour mon site donc je fais chauffer easyphp et la le dra Parcourir des repertoires (fonction recursive) [ par ov3rdoze ] SalutJe souhaite réaliser une fonction qui parcours une repertoire ainsi que ses sous-repertoires afin de recuperer les photos qu'ils contiennentJ'ai


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,28 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.