Garder un script en cours d'exécution côté serveur à tout moment [fermé]
-
26-12-2019 - |
Question
J'ai créé un site internet : http://instapromobiz.com qui automatise les likes/follows/ne plus suivre Instagram via l'API Instagram en utilisant principalement javascript et un peu de php.
Mon problème est qu'il est clair qu'il ne s'exécute que lorsque la page est ouverte par l'utilisateur.Cela peut être une question générale, mais quelle serait la meilleure façon de faire exécuter ce script (qui est une boucle infinie jusqu'à ce que l'utilisateur l'arrête) sans que l'utilisateur ait la page ouverte.Fondamentalement, ils se connectent, ajoutent des balises et appuient sur Démarrer, puis ils peuvent partir, puis revenir plus tard et arrêter le script.
J'ai un hébergement Web régulier, pas de SSI ni de VPS, donc node.js ne peut pas être utilisé.
La solution
Restructurez votre script pour le terminer, puis utilisez cron pour l'exécuter toutes les minutes ou toutes les 15 minutes.De nombreux plans d'hébergement Web prendront en charge ce type de configuration.
Plus d'informations sur Cron : https://help.ubuntu.com/community/CronHowto
Autres conseils
Vous pouvez accomplir cela dans les versions PHP 4 et 5.
Étape 1.Supprimer le délai
Utilisez le fixer une limite de temps fonction, et appelez ceci :
set_time_limit(0);
Étape 2.Ignorer l'abandon
PHP a une fonction conviviale appelée ignore_user_abort.Utilisez-le comme ceci :
ignore_user_abort(true);
Désormais, le script peut s'exécuter indéfiniment !