Prérequis :
Votre serveur doit disposer d'active Perl 5.x ou supérieur.
Explication :
Ce code n'est pas exhaustif. Je ne l'ai pas crée.
Il s'agit simplement d'un code source perlscript que j'ai trouvé sur le net il y a quelques mois.
Malheureusement je ne me rappelle ni du site ni de l'auteur puisque le script n'était pas
documenté.
Le code :
<script language="perlscript" runat="server">
use IO::Socket;
# procédure de gestion des erreurs
sub ErrorReport(){
$Response->Write("Cannot connect!");
$Response->end;
}
# procédure d'interrogation whois
# function whois(domain,server_whois)
sub whois {
my ($domain, $server) = @_; #on récupère les paramètres de la fonction
my $returnString=""; #on initialise la chaîne de retour de fonction à vide
# ouverture du port WHOIS 43
my $remote=new IO::Socket::INET(
Proto => "tcp",
PeerAddr => "$server",
PeerPort => "whois(43)",
) or die ErrorReport;
# interroge le serveur WHOIS
$remote->autoflush(1);
print $remote "$domain\n" . $BLANK;
while ( <$remote> ) {
$returnString.=$_;
}
close $remote;
#retourne le résultat
$returnString;
}
</script>
<html>
<body><pre>
<%=whois("webeclaireur.fr","whois.nic.fr") %></pre>
</body>
</html>
Idées :
Cet exemple pourrait très bien s'intégrer dans le cadre d'un système de réservation de nom de domaine avec e-commerce ou dans un "control panel" permettant de gérer votre serveur Windows NT.
Références :
Le site de l'activePerl
http://www.activestate.com
Téléchargement
Whois.zip