Relance script php après arrêt serveur

Signaler
Messages postés
37
Date d'inscription
mercredi 2 janvier 2008
Statut
Membre
Dernière intervention
28 août 2008
-
Messages postés
79
Date d'inscription
mardi 28 novembre 2006
Statut
Membre
Dernière intervention
28 juin 2008
-
Bonjour,

Voici le problème qui me pose problème depuis un petit bout de temps et que je n'arrive toujours pas à résoudre :
Dans mon application, j'ai un script php qui tourne 24H/24 lorsque le serveur tourne. De ce fait, si il y a un arrêt du serveur, le script doit être relancé à la main. Et c'est la que le probleme arrive! Je voudrais savoir comment relancer automatiquement le script au moment ou je relance le serveur.
Voila pour mon probleme. J'espere que quelqu'un aura une solution à me proposer.
Merci d'avance.

De plus, j'aimerai savoir s'il était possible de connaître l'état d'un script (s'il est lancé ou pas).

Merci.

3 réponses

Messages postés
962
Date d'inscription
samedi 19 janvier 2002
Statut
Membre
Dernière intervention
2 août 2010
1
Bonjour,

C'est tout à fait possible, avec windows tu as les services ainsi que la base de registre pour démarré un programme.
Pour Linux/FreeBSD, tu as aussi les services (init.d, rc.d). La façon la plus simple de démarrer un programme lorsque le système démarre, c'est le fichier /etc/rc.local (il peut être dans un autre endroit, suivant ta distribution). Il est executé après tous les autres scripts d'initialisation.

Pour savoir si le process est déja lancé, sous windows je sais pas trop, via une commande externe je suppose.

Pour linux tu peux soit utiliser des pid files, soit voir avec la liste de processus.

Les pidfiles: Lorsque ton programme démarre, à l'aide des fonctions posix tu récupère le PID de ton application et tu le mets dans un fichier. Ensuite quand tu veux savoir tu lis ledis fichier, et tu interroge (via fonction posix) pour savoir c'est quoi ce processus la, si il tourne, c'est quoi son nom et tu compare avec ce que tu veux.

Sinon, tu fais simplement if (trim(shell_exec('ps aux|grep lenomdetonprogramme')) != ''){ echo 'il fonctionne deja';exit();}

-------------------
Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ??
Et bien c'est la : www.e3b.org  
Messages postés
37
Date d'inscription
mercredi 2 janvier 2008
Statut
Membre
Dernière intervention
28 août 2008

Merci pour toutes ces réponses.
En effet, je suis sous Windows donc j'ai bien vu ce que tu avais écrit mais comment ça se met en place?
Et sinon personne d'autres sait comment faire pour voir l'état d'un script sous Windows?
Merci d'avance pour les réponses.
Messages postés
79
Date d'inscription
mardi 28 novembre 2006
Statut
Membre
Dernière intervention
28 juin 2008

ou sinon essaye d'utiliser des cron, tape ce mot sur google :)