OVH Community, votre nouvel espace communautaire.

suPHP - Problème pour lancer un script php - Release 2 Gentoo


Mediant
02/11/2012, 10h43
Bonjour.

La "solution" trouvée et effectuée .. dé-installer les version "OVH" de PHP et APACHE et les installer les versions "classiques".

Mais je suppose quand même qu'il devait y avoir une manière moins "barbare" et donc plus intelligente de procéder ... mais comme je ne pouvais pas attendre !

lolowarrior
02/11/2012, 10h38
Bonjour,

J'ai le meme probleme...
Vous aviez trouvé une solution pour ca ?

Cdt, LAurent

Mediant
29/01/2009, 08h32
Aie !!

Je pense m'être trompé en créant la discussion ... elle a été ouverte dans Forum OVH > Serveurs dédiés > HOW-TO (la dernière catégorie que j'avais parcourue) ..

Est-ce qu'un modérateur pourrait me déplacer dans Forum OVH > Serveurs dédiés ??

Merci beaucoup !!

Mediant
28/01/2009, 18h15
Bonsoir.


Etant en train de découvrir suPHP sur un nouveau dédié basé sur la Release 2 d'OVH (Gentoo en 32b), j'ai quelques difficultés pour lancer l'execution de scripts PHP .. depuis une page PHP.

Cela passe sur d'autres systèmes (non équipés de suPHP), tel que sur un autre dédié (en Release 1 chez OVH) ou sur Windows, mais là ...

Afin de voir ce qui n'allait pas (ou plutôt de comprendre en faisant cela pas à pas), je me suis fait un petit script tout simple qui se contente de créer un fichier et d'y écrire 'OK' lorsqu'il est appelé.

script_hello.php :
Code PHP:

function trace($msg){
    if(
$fich=fopen("trace_hello.txt","a")){
        
fwrite($fich,date('Y-m-d H:i:s').": ".$msg."\r\n");
        
fclose($fich);
    }
}

trace("OK");

?>
Lorsque que je le lance, depuis la ligne de commande ou depuis le navigateur, cela fonctionne bien.


Ensuite, je crée la page qui sera appelée depuis le navigateur et qui se charge d'appeler ce script à l'aide de la fonction exec().

lance_hello.php :
Code PHP:

function trace($msg){
    if(
$fich=fopen("trace_lance.txt","a")){
        
fwrite($fich,date('Y-m-d H:i:s').": ".$msg."\r\n");
        
fclose($fich);
    }
}

trace("ENTRE");

$cmdredir "php /home/ovh/www/script_hello.php 2>/dev/null >/dev/null &";

trace("avant exec($cmdredir)");
$vret exec($cmdredir);
trace("apres exec");

trace("SORTIE");

echo 
"Fin page ...";

?>
Pour essayer de suivre un peu tout çà, la page appelée laissera quelques traces dans un fichier.

M'étant replacé dans le contexte initial qui était celui de le gentoo relase2 livrée "clé en main", je place ces deux fichiers dans le répertoire : /home/ovh/www

Ensuite, un petit
Code:
chmod ovh:ovh
sur les fichiers afin que suPHP ne me retourne pas une indication sur le min_uid.

En lancant la page depuis le navigateur, j'obtiens bien le message "Fin page ...", mais lorsque je jette un oeil dans le dossier, je n'ai pas le résultat attendu.

Je peux constater que le fichier de "traces" pour la page ne cesse de grandir !! ce qui indique que la page est en train de .. boucler !?!

Les traces obtenues ressemblent à :
Code:
2009-01-28 18:39:30: ENTRE
2009-01-28 18:39:30: avant exec(php /home/ovh/www/script_hello.php 2>/dev/null >/dev/null &)
2009-01-28 18:39:30: apres exec
2009-01-28 18:39:30: SORTIE
2009-01-28 18:39:30: ENTRE
2009-01-28 18:39:30: avant exec(php /home/ovh/www/script_hello.php 2>/dev/null >/dev/null &)
2009-01-28 18:39:30: apres exec
2009-01-28 18:39:30: SORTIE
2009-01-28 18:39:30: ENTRE
2009-01-28 18:39:30: avant exec(php /home/ovh/www/script_hello.php 2>/dev/null >/dev/null &)
2009-01-28 18:39:30: apres exec
2009-01-28 18:39:30: SORTIE
2009-01-28 18:39:30: ENTRE
2009-01-28 18:39:30: avant exec(php /home/ovh/www/script_hello.php 2>/dev/null >/dev/null &)
2009-01-28 18:39:30: apres exec
2009-01-28 18:39:30: SORTIE
2009-01-28 18:39:30: ENTRE
2009-01-28 18:39:30: avant exec(php /home/ovh/www/script_hello.php 2>/dev/null >/dev/null &)
2009-01-28 18:39:30: apres exec
2009-01-28 18:39:30: SORTIE
...
.. et cela ne s'arrête que lorsque je renomme différemment ma page d'appel.


De plus, le script que je souhaitais executer .. ne la pas été !?!


Cela fais un bout de temps que j'essaie de comprendre mais là .. je cale.


Quelqu'un aurait-il la grande boooonté d'éclairer ma lanterne ??

(Cela doit être un truc tout bête .. mais je suis trop dans le floue avec tout çà )