Je souhaite créer une page Web dans laquelle j'ajouterai des liens intranet. Je voulais juste savoir comment vérifier si le lien que j'ai ajouté, à un moment donné fonctionne ou non. Je veux marquer le lien en ROUGE s'il ne fonctionne pas, sinon il devrait être vert.Comment vérifier si un lien est actif ou non?
Répondre
Si vous voulez un contrôle programmatique léger, vous pouvez faire une requête HTTP HEAD et vérifier un code de réponse supérieur ou égal à 200 et inférieur à 400.
quelque chose Ping de l'autre côté du lien. Alors que vous pourriez probablement trouver des moyens de vérifier l'état de l'interface ou des tables de routage ou d'autres choses ... ce que vous voulez vraiment savoir, c'est si le trafic circule vers et depuis cette destination.
On peut utiliser unix ping
avec l'argument -c
d'envoyer un certain nombre de paquets, et -w
pour indiquer le temps d'attente en secondes. Ensuite, vérifiez le statut de sortie:
ping -c 3 -w 5 remote-host
ping quittera avec un code de sortie différent de zéro si les paquets sont supprimés.
Si vous voulez vérifier côté client ...
<style type="text/css">
.good {
color:green;
}
.bad {
color:red;
}
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("a.checkLinks").each(checkme);
})
// load page from URL with ajax
function checkme(i, item) {
$.ajax({
type: "GET",
url: item.href,
success: function(data, textStatus) {
$(item).addClass("good");
},
error: function(request) {
$(item).addClass("bad");
}
});
}
</script>
<a class="checkLinks" href="good.html">Good</a><br/>
<a class="checkLinks" href="bad.html">Bad</a>
Cela ne fonctionnera pas réellement en raison des restrictions inter-domaines –
bon point. corriger pour assumer le même domaine. –
Si vous voulez vérifier côté sever (exemple php):
<?php
function isup($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
if(curl_exec($ch)) {
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
return ($httpcode < 400);
}
return false;
}
$url = "http://example.com/404";
printf('<a href="%s" class="%s">Link</a>', $url, isup($url) ? 'good' : 'bad');
- 1. Comment vérifier si un utilisateur est toujours actif?
- 2. Comment vérifier si une méthode python est liée ou non?
- 3. Façon de vérifier si TinyMCE est actif dans WordPress
- 4. Comment vérifier si un répertoire IIS est un répertoire virtuel ou non?
- 5. Comment vérifier si un pointeur est valide?
- 6. Comment créer un lien actif dans RSS?
- 7. Comment vérifier si un CD-ROM est réelle ou virtuelle
- 8. Vérifiez si un arrêt est initié ou non
- 9. Vérifiez si ftp est complet ou non?
- 10. vérifier si les composants microsoft sont présents ou non
- 11. Comment vérifier la MSMQ messageBody est valide ou non
- 12. si l'utilisateur est déjà connecté ou non?
- 13. Comment vérifier si FileObject est un dossier?
- 14. Comment vérifier si un caractère Java est un symbole monétaire
- 15. vérifier un correctif logiciel pour WMEncoder est installé ou non
- 16. Comment vérifier si DLL est compilé debug-
- 17. Comment vérifier si le travail est désactivé ou non dans sqlserver management studio 2005?
- 18. Vérifier si mysql_query a retourné quelque chose ou non
- 19. Comment vérifier si une session est invalide
- 20. Comment vérifier si une application est en debug ou release
- 21. Comment vérifier si MOSS Standard ou MOSS Enterprise est installé?
- 22. quel est le moyen de vérifier si la cellule Excel est verrouillé ou non?
- 23. Comment puis-je détecter si Dispatcher.DisableProcessing est actif?
- 24. Comment vérifier si un périphérique USB donné est branché?
- 25. Comment vérifier si IP est un proxy public
- 26. jQuery accordéon et lien actif
- 27. Comment identifier une variable PHP est un tableau ou non
- 28. Javascript pour vérifier si une case à cocher est cochée ou non cochée
- 29. vérifier si un tableau est multidimensionnel
- 30. AS3: Vérifier si un dictionnaire est vide
réponse @Stef ping n'indique pas si un serveur web est courir encore moins si le document lié existe sur elle. ping seulement prouve qu'une machine est joignable sur un réseau. – Asaph
Ah, je pensais par «lien» que vous vouliez dire lien réseau. Ce n'était pas clair pour moi qu'il s'agissait d'un lien vers une page Web. – Stef