2010-10-14 21 views
5

J'ai créé un script PHP qui a ignore_user_abort (true); en elle, et il tourne en boucle infinie ... J'ai fermé la page web, le serveur apache et le navigateur aussi .. Son fonctionnement comme un armageddon maintenant .. Rien ne semble l'arrêter .. comment l'arrêter ?? Qu'est-ce qu'il exécute sous (nom du processus) dans Windows ?? J'ai cherché des termes liés à PHP ou serveur ou un navigateur .. rien ne semble frapper ..comment tuer le fil de php de fond?

Comment puis-je "tuer" le processus maintenant ??

+0

btw, la réponse acceptée dans ce: http://stackoverflow.com/questions/265073/php-background-processes suggère qu'il avait été dans cette position, mec, si vous êtes autour, comment pouvons-nous résoudre ce ?? – Shrinath

+0

Comment savez-vous que le script est toujours en cours d'exécution? Si vous avez arrêté le processus d'Apache (httpd), le script devrait également s'arrêter. – Mchl

+0

il met à jour le fichier journal (essentiellement un fichier texte) ... Je peux voir le journal en utilisant un processus différent. donc je sais qu'il fonctionne encore ... – Shrinath

Répondre

9

http://www.mywebref.com/Code_Helper/pages/40.html semble bien expliquer cela.

  1. SSH sur le serveur
  2. Tapez ps x
  3. Voir la liste des processus actuellement sur votre serveur
  4. Obtenez le PID (process id) de cette liste et tapez kill xxxxx

Cela devrait le faire.

Merci au gars qui a posté cela au fait. Maintenant je sais aussi. :)

+2

Juste pour clarifier le 'xxxxx' ci-dessus est le PID! Je suggère également d'utiliser kill -9 xxxxx –

+1

Juste pour clarifier: tout ce qui précède s'applique à linux – Mchl

+0

Vous êtes les bienvenus :) il il :) de toute façon, je ne suis pas l'administrateur sur le serveur, et je n'ai pas de privilèges .. J'ai réussi à le faire en redémarrant le serveur mysql auquel le processus accédait :) – Shrinath

1

En ce qui concerne la réponse par etbal, c'est OK tant que le processus ne soit pas sans cesse frai d'autres processus en raison d'une erreur dans votre logique de programmation (qui me :().

Ensuite, vous pouvez essayer

  1. SSH sur le serveur
  2. type dans uuuuu de pkill

où uuuu est votre nom d'utilisateur SSH. Cela devrait tuer tous les processus appartenant à toi. Dans mon cas particulier, le fichier à l'origine du problème continuait à s'appeler, il devait être renommé pour qu'il ne puisse pas s'appeler à nouveau, puis un pkill était émis.