SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

289 Plugins, 197 contribs sur SPIP-Zone, 81 visiteurs en ce moment

Accueil > Interactivité, échanges > Syndication > Tester les URL des sites référencés

Tester les URL des sites référencés

27 juin 2005 – par philippe, silicium – 10 commentaires

3 votes

Les adresses de sites web inscrits dans votre annuaire SPIP sont elles valides.

Il y a quelques temps, Mathieu Onfray webmaster du site Japanim.net, a réalisé pour ses propres besoins une page php à rajouter à votre partie privée pour vérifier facilement si les adresses de sites web inscrits à votre annuaire spip sont valides ou non.

L’usage en est fortement recommandé pour éviter les fameux 404 not found qui gâchent la navigation internet.

Le fichier n’a subit qu’un changement de nom de fonction pour devenir compatible avec spip 1.8 : ligne 203 spip_fetch_row() est devenu spip_fetch_array(). [1]

Appelez le test_sites.php3 et placez le dans votre répertoire /ecrire.
Ouvrez le ensuite avec votre navigateur. C’est tout.

P.-S.

Mathieu Onfray m’a autorisé à diffuser sous licence GPL son excellent script permettant de tester si les sites web inscrits dans votre annuaire de site spip sont toujours valides.

Notes

[1Donc pour résumer : vous utilisez SPIP<1.8>  spip_fetch_row() » , vous utilisez SPIP 1.8 ou plus : c’est « spip_fetch_array() »

Dernière modification de cette page le 10 février 2007

Retour en haut de la page

Vos commentaires

  • Le 15 avril 2007 à 20:43, par Ghislain En réponse à : Tester les URL des sites référencés

    Bonjour,
    Le fichier test_sites.php3 semble ne plus être valable depuis le passage à spip 1.9. Existe-t-il une version récente de cette contrib ? Est-il compliqué d’adapter le fichier pour spip 1.9.2 ?
    Je cherche de mon côté
    Merci d’avance à qui aurait une solution

    Répondre à ce message

  • Le 12 août 2005 à 15:47, par ? En réponse à : > Tester les URL des sites référencés

    Simple, rapide, facile d’utilisation : bravo !

    Olivier

    Répondre à ce message

  • Le 26 juillet 2005 à 14:22, par ? En réponse à : > Tester les URL des sites référencés

    Intéressant mais largement tributaire du paramétrage du DNS : dans le cadre de mon intranet, toute adresse hors intranet renvoie un code « Impossible de se connecter ».

    La contrib m’a quand même permis de trouver un lien mort. Merci.

    Répondre à ce message

  • Le 5 juillet 2005 à 17:17, par Gilles Corlobé En réponse à : > Tester les URL des sites référencés

    Le script fonctionne très bien : merci à son auteur.

    Je me permets de proposer une modification destinée à vérifier l’état des liens de redirection des pages. Les pages vers lesquels les articles de SPIP sont redirigés ne sont plus toujours disponibles (c’est exactement le même problème).

    Pour créer ce nouveau script (test_redirection.php3), il suffit de dupliquer test_sites.php3 et de remplacer à la fin du script entre :

    //nbre de sites référencés

    et

    CreerLiens(« test_redirection.php3 ?debut= », $nba, $nbr_entrees) ;

    par ceci :

    $res2 = spip_query(« SELECT COUNT(chapo) FROM spip_articles ») ;

    $resultat2 = spip_fetch_array($res2) ;

    $nbr_entrees = $resultat2[0] ;

    if (empty($debut)) $debut = 0 ;

    //construction de la requête

    $req = « SELECT * FROM spip_articles » ;

    //utilisé dans une v2 du script...

    //if (! empty($id_rubrique)) $req .= « WHERE id_rubrique=$id_rubrique » ;

    $req .= « ORDER BY id_article LIMIT $debut, $nba » ;

    $res = spip_query($req) ;

    $ligne = 0 ;

    while($resultat = spip_fetch_array($res))

    $pos = strpos($resultat[« chapo »], « http:// ») ;

    if ($pos==1)

    echo « - p>

    echo "> » . $resultat[« titre »] . «  » ;

    $tab_return = check_connect($resultat[« chapo »]) ;

    echo «  : » . $tab_return[« message »] ;

    echo « 
     » ;

    $ligne++ ;

    if ($ligne==0)

    echo « Aucune page redirigée...
     » ;

    J’espère que pour une modification faite en quelques minutes ça fonctionnera aussi bien chez vous que chez moi !

    Répondre à ce message

  • Le 29 juin 2005 à 16:55, par ? En réponse à : > Tester les URL des sites référencés

    Je viens de tester le tout ! J’ai eu plusieurs messages « La page a été déplacée momentanément » ou « Page inexistante ! ». Mais, après vérifications, tous ces liens sont pourtant bien valides et fonctionnels. Une idée pourquoi le test n’est pas fidèle ? Je suis sur SPIP 1-8.

    • Le 29 juin 2005 à 17:07, par ? En réponse à : > Tester les URL des sites référencés

      Comme tu peux le lire dans le code, ce script analyse la validité des liens par des requêtes hhtp et analyse en retour ce que lui renvoie le serveur.

      Soit :

      // 2** la page a été trouvée
                              case 200 :               
                                                      $message = "OK";
                                                      $color = "#33cc00";
                                                      $connect = 2;
                                                      break;
                              case 204 :       
                                                      $message = "Cette page ne contient rien !";
                                                      $color = "#ff9966";
                                                      break;
                              case 206 :       
                                                      $message = "Contenu partiel de la page !";
                                                      $color = "#ff9966";
                                                      break;
                              // 3** il y a une redirection
                              case 301 :       
                                                      $message = "La page a été déplacée définitivement";
                                                      $message .= seek_redirect_location($en_tete);
                                                      $color = "#ff9966";
                                                      $connect = 1;
                                                      break;
                              case 302 :       
                                                      $message = "La page a été déplacée momentanément";
                                                      $message .= seek_redirect_location($en_tete);
                                                      $color = "#ff9966";
                                                      $connect = 1;
                                                      break;
                              // 4** erreur du coté du client
                              case 400 :       
                                                      $message = "Erreur dans la requête HTTP !";
                                                      $color = "#ff0000";
                                                      break;
                              case 401 :       
                                                      $message = "Authentification requise !";
                                                      $color = "#ff0000";
                                                      break;
                              case 402 :       
                                                      $message = "L'accès à la page est payant !";
                                                      $color = "#ff0000";
                                                      break;
                              case 403 :       
                                                      $message = "Accès à la page refusé !";
                                                      $color = "#ff0000";
                                                      break;
                              case 404 :       
                                                      $message = "Page inexistante !";
                                                      $color = "#ff0000";
                                                      break;
                              // 5** erreur du coté du serveur
                              case 500 :       
                                                      $message = "Erreur interne au serveur !";
                                                      $color = "#ff0000";
                                                      $connect = 1;
                                                      break;
                              case 502 :       
                                                      $message = "Erreur à cause de la passerelle du serveur !";
                                                      $color = "#ff0000";
                                                      break;
                              // cas restant
                              default :       
                                                      $message = "Erreur non traitée dont le numéro est : $no_code!";
                                                      $color = "#000000";
                                                      break;

      Donc, selon le paramétrage du serveur tu peux avoir des messages invalides :-)

    • Le 29 juin 2005 à 17:16, par ? En réponse à : > Tester les URL des sites référencés

      Par exemple : j’ai l’adresse http://www.libroscope.org/Spip-au-scope de référencé. Le site marche très bien mais j’ai le message « Page inexistante ! ». Et c’est comme ça pour tous les messages d’erreurs.

    • Le 29 juin 2005 à 17:21, par ? En réponse à : > Tester les URL des sites référencés

      S’il y en a plusieurs je pense pour une erreur de réglage du DNS de ton serveur d’hébergement.

      Pour info le même script me donne une url valide pour http://www.libroscope.org/Spip-au-scope sur http://www.allergique.org/

      Désolé je ne vois rien d’autre...

    • Le 29 juin 2005 à 17:40, par ? En réponse à : > Tester les URL des sites référencés

      Même en local (donc pas sur mon hébergeur) cette adresse me donne, comme plusieurs autres, le même message erroné.

      Je vais renoncer.

      Merci !

    Répondre à ce message

  • Le 27 juin 2005 à 23:37, par catherine En réponse à : > Tester les URL des sites référencés

    Nickel


    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Sauvegarder le répertoire IMG/ avec wget

    20 février 2007 – 10 commentaires

    Voici un système client serveur en deux lignes pour sauvegarder le répertoire des documents.

  • Rôles de documents

    21 février – commentaires

    Ce plugin permet d’attribuer un rôle aux documents liés aux contenus, et cerise sur le gâteau, rend possible la gestion des logos par le biais des documents-joints. Principe Les documents liés aux contenus n’ont pas forcément tous la même (...)

  • COLT : Extension de Firefox utile pour SPIP

    21 septembre 2008 – commentaires

    Une petite extension de Firefox qui permet de copier des liens sous format SPIP

  • Moulinette

    17 juillet 2015 – 46 commentaires

    Un squelette qui monte et qui descend ! Moulinette est un squelette basé sur le thème Grayscale (documentation) pour Bootstrap 3. Le type de site attendu est un site en une seule page : une rubrique avec quelques articles, des titres courts, des (...)

  • Plugin Duplicator

    3 janvier 2010 – 88 commentaires

    Duplication de rubrique et de ses contenus, et duplication d’articles pour SPIP Fonctionnement Ce plugin permet de dupliquer une rubrique et son contenu depuis l’espace privé en ajoutant un bouton dans la navigation de gauche dans l’espace privé (...)