Actualités WEB et WordPress, thèmes, plugins. Ici, nous partageons des conseils et les meilleures solutions de sites Web.

Affichage de la disponibilité de l’état du serveur sur les pages Web à l’aide de PHP et Crontab

9

Nous savons tous, précédemment, dans cet article, que nous pouvons utiliser shell_exec ou exec en PHP pour obtenir la sortie d’un programme externe sur le serveur. Alors évidemment, on peut lancer la commande linux uptime pour obtenir l’état du serveur, ce qui donne quelque chose comme ça (ou si vous faites défiler ce blog, à la fin de cette page, vous trouverez une mise à jour de l’état presque en temps réel, c’est-à-dire mise à jour tous les 5 minutes):

 10:25:01 up 31 days, 15:17,  0 users,  load average: 0.01, 0.09, 0.12

Cependant, il n’est pas recommandé d’invoquer directement la commande uptime en utilisant shell_exec ou exec
pour ces raisons. Tout d’abord, shell_exec et exec peuvent être désactivés (pour autant que je sache) par les sociétés d’hébergement Web, principalement sur les hôtes partagés pour des raisons de sécurité. Fasthosts désactive cela mais Godday, en revanche, n’interdit pas cette utilisation. Deuxièmement, il est considéré comme inefficace et chronophage (CPU) d’exécuter ces deux commandes en temps réel dans des scripts PHP.

La manière correcte/recommandée d’obtenir ces informations est la suivante: Tout d’abord, créez un crontab qui s’exécute à un intervalle de temps, par exemple toutes les 2 minutes sur le serveur, en utilisant crontab -e vous permettra de modifier les travaux à l’aide de votre éditeur de texte préféré tel comme nano ou vim.

Ainsi, toutes les 2 minutes (supprimer /2 pour chaque minute), le fichier uptime.txt sera mis à jour et mis sous le dossier public HTTP. Vous pouvez donc utiliser le script PHP suivant pour obtenir ces données.

Cela semble assez facile, non ? Cela vous donne un statut de disponibilité relativement précis et vous pouvez mettre cette information dans le footer.php du blog wordpress (faire défiler jusqu’à la fin de la page par exemple).

Vous pouvez également utiliser la variable de serveur DOCUMENT_ROOT qui représente le répertoire racine d’un site Web. Assurez-vous donc que uptime.txt se trouve dans le répertoire racine d’un site Web.

$uptime = ''; $uptimefile = $_SERVER['DOCUMENT_ROOT']. '/uptime.txt'; if (is_file($uptimefile)) {     $uptime = @file_get_contents($uptimefile); }  

Source d’enregistrement: helloacm.com

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More