Aller au contenu

Indicateur de serveur Online


Boo54

Messages recommandés

Posté(e)

Hello

Je veint de mettre en place un serveur FTP et Web et je souhaiterais pouvoir indiquez sur mon site si le serveur et Online ou Offline :-D

@++ :transpi:

Posté(e)

Si ton site utilise PHP, c'est assez facile.

Il suffit que ta page web tente de se connecter à ton FTP (PHP possède des fonctions ftp). Ensuite, il suffit d'afficher le résultat de la tentative (sous forme d'une icône par exemple).

Posté(e)

Une solution très simple à mettre en oeuvre en utilisant la fonction fsockopen()

Docs PHP

Si PHP n'est pas installé sur ton serveur, tu peux essayé de passer par un serveur intermédiaire (hébergement free par ex) en appelant le script via une image :

<img src="http://ton_hebergement_free.free.fr/script.php" alt="" />

avec un script PHP qui se charge de tester si l'accès à ton serveur est possible. Tu termines ce script en renvoyant une image correspondant à l'état) en utilisant un header("Content-type: image/png");

Tu vois le principe? (chuis pitetre pas très clair... :reflechis: )

Posté(e)

Bon, tu te fais deux images (offline et online), de paint à photoshop, tout est permis. Dans l'exemple qui suis, image en PNG, à modifier selon tes besoins.

Pour le script PHP :


<?php

// Test à faire avec la fonction fsockopen afin de vérifier l'état du serveur

$serveur = "www.serveur.com"; // Serveur à tester
$port = 80; // N° de port, 80 pour l'hhtp
$timeout = 30; // Timeout
$fp = fsockopen($serveur, $port, $errno, $errstr, $timeout); // $errno, $errstr renvoient les codes d'erreurs en cas d'échec, ne pas s'en préoccuper si pas de besoin
if($fp)
  $image = "online.png";
else
  $image = "offline.png";

// On balances les headers maintenant afin de renvoyer l'image
header("Content-Type: image/png");
header('Content-transfer-encoding: binary');
header('Content-length: '.filesize($image));
readfile($image);
?>

Tu appelles donc cette page via un simple <img src="http://tonserveurouyadupéhachepé.com/script.php" alt="" />

et normalement ça devrait marcher. J'ai pas testé si tout est vraiment ok, mais en gros c'est de ctte façon que tu peux procéder.

Posté(e)

et si le site reçoit pas mal de requête de ce type ça serai peu être une bonne idée de cacher le résultat pour au moins 4-5 minutes (avec a la limite un bouton forçant la re-actualisation) si il y a une sql à dispo tu peu cacher ça dedans autrement dans un fichier texte quelconque.

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...