[FTP] Tester un port avec php.
Bonsoir à tous,
Voici ce qui me fait venir vers vous.
Je possède plusieurs serveur sur ma machine (HTTP, FTP, Mail, Telnet, VNC, Teamspeak...)
Tous ces serveurs utilisent différents port(80, 21...)
De façon à ce que mes amis puissent savoir si tel ou tel serveur et en ligne (ils ne sont pas lancés en permanence) je souhaiterai créer un script me permettant de tester la connectivitée à ces serveurs.
Ma page se lance sur un hébergeur gratuit.
J'ai essayé avec ce script pris sur un autre site et proposé en téléchargement pas waz :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| <?php
// Adresse du serveur Web à tester
$server = 'http://www.google.com:80';
// Temps avant expiration du test de connexion
define('TIMEOUT', 30);
$tab = parse_url($server);
$tab['port'] = isset($tab['port']) ? $tab['port'] : 80;
if(false !== ($fp = fsockopen($tab['host'], $tab['port'], $errno, $errstr, TIMEOUT))) {
fclose($fp);
header('Location: ' . $server);
} else {
die('Erreur #' . $errno . ' : ' . $errstr);
}
?> |
PS : C'est pas de la pub, juste le respect des droits d'auteur.
Apparemment, ca ne fonctionne pas sur les hébergeurs gratuits. Voici les erreurs qui s'affichent :
Code:
1 2 3
| Warning: fsockopen() has been disabled for security reasons in /www/sites/1/ifrance.com/X/X/XXXXX/site/Testping.php on line 37
Warning: fclose(): supplied argument is not a valid stream resource in /www/sites/1/ifrance.com/X/X/XXXXX/site/Testping.php on line 38 |
Quelqu'un connait t'il une solution pour que je puisse effectuer un test et si le test est concluant afficher une image verte (ce qui veut dire que le serv est online et dans le cas contraire afficher une image rouge qui veut dire que le serv est offline.
Si possible une solution simple fonctionnant sur les hégergeurs gratuit.
Merci d'avance pour vos réponses.
EDIT ==> Ceci pour chaque port du serveur le serveur Web peut très bien être actif mais pas le FTP par exemple.
Re: Tester un port avec php.
Citation:
Envoyé par Trebor
Code:
Warning: fsockopen() has been disabled for security reasons in /www/sites/1/ifrance.com/X/X/XXXXX/site/Testping.php on line 37
Le message est clair : la fonction à été désactivée par l'hebergeur en question ;)
Tu peux essayer de te rabattre sur la libraire de socket (socket_create/socket_connect etc...), au cas où celle ci serait installée et pas bridée, mais il y a peu de chances que ça fonctionne amha :roll:
Le mieux serait encore, si tu peux, de trouver un hebergeur qui accepte que tu utilises ces fonctions ;)
Par exemple j'ai un script sur free.fr qui fonctionne très bien (avec des sockets) -> voir ici.