J'ai développé un script php qui appelle une API externe dans une boucle. Il est en cours de test sur un serveur VPS qui exécute LAMP sous Debian. J'ai remarqué ce matin que l'API ne répondait pas à mon script. Lorsque j'ai appelé le fournisseur, ils m'ont dit que mon serveur appelait des milliers de fois les heures api depuis 10 heures. Je suppose qu'un script php (sur lequel j'ai travaillé la veille et testé sur mon VPS) est entré dans une boucle infinie pendant l'une des exécutions et n'est jamais sorti (je l'ai testé depuis l'invite de commande, et pas sur le Web.) J'ai tenté d'arrêter et de démarrer Apache, mais le personnel de support technique d'API indique que les appels arrivent toujours depuis l'adresse de mon serveur. Comment puis-je trouver et arrêter le processus? En outre, y at-il une possibilité que l’arrêt / le démarrage d’Apache résolve le problème,
Veuillez me pardonner de ne pas utiliser correctement mon environnement de test local.
Edit: Je ne connais pas le nom du processus, je dois découvrir le nom (ou pid) en fonction du comportement.
php-fpm
et php-cgi
, vous pouvez donc vous en servir ps ax | grep php-
pour savoir laquelle est en cours d’exécution et où. Incidemment, ceux - ci peuvent avoir des scripts de démarrage / d'arrêt dans init.d (php5-fpm pour les anciens)
copy('remotefile', 'temporarylocalfile');
vous pouvez l'exécuter en tant que tâche cron ou juste dans sa propre boucle infinie avec du temps d'attente intégré. (Ou utilisez simplement n'importe quel utilitaire fourni comme wget
celui-ci.)