Publié le 22/11/2010
Auteur fobec
Réseaux sociaux
0 partages
0 tweets
0 plus
1 commentaires

Trouver l'URL d'origine d'un lien TinyURL

Lancé en 2002, TinyURL est un outil utilisé sur le web pour afficher des url courtes. Par exemple, l'adresse http://www.fobec.com/ peut s'écrire http://tinyurl.com/3xk4g8a en utilisant le service tinyurl.
A quoi ça sert ? a priori, les 2 raisons sont : la réduction du nombre de caractère (cf tweet) et le fait de masquer l'url réelle lorsque l'on affiche un lien.

Class PHP TinyUrl

La class TinyurlRevealer décode un lien TinyUrl pour afficher l'adresse réel. Une requête HEAD est envoyée au serveur pour connaitre l'url de redirection.
<?php
 
/**
 * Découvrir l'URL derrière un lien TinyUrl
 */
class TinyurlRevealer {
 
    public static function decode($url) {
        $urls = parse_url($url);
        $param = $urls['path'];
 
        $fp = fsockopen("tinyurl.com", 80);
        if (!$fp) {
            return "";
        } else {
            $buf = "";
            fputs($fp, "HEAD " . $param . " HTTP/1.0\r\nHost: tinyurl.com\r\n\r\n");
            while (!feof($fp)) {
                $buf.= fgets($fp, 128);
            }
            fclose($fp);
            //Cherche la redirection vers l'URL réel
            $lines = explode("n", $buf);
            foreach ($lines as $line) {
                if (strpos($line, 'Location') !== false) {
                    return substr($line, 10);
                }
            }
            return '';
        }
    }
}
?>

Décoder une URL raccourcie

Quelle URL se cache derrière http://tinyurl.com/3xf5cyp
Pour connaitre l'adresse du site, il faudrait cliquer sur l'url pour ensuite voir l'url d'origine dans le navigateur internet. Le bout de code permet d'extraire directement l'adresse source sans passer par le navigateur. L'astuce consiste à repérer la redirection 301 puis d'extraire la nouvelle URL indiquée dans le paramètre location.
<php
/**
 * Exemple
 */
echo TinyurlRevealer::decode('http://tinyurl.com/3xf5cyp');
//Resultat: http://www.fobec.com
?>

Depuis de nombreux services ont été lancés que l'on retrouve notamment sur Twitter. La manière de décoder une url raccourci marche également pour découvrir l'adresse internet d'origine sans passer par le navigateur.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.
avatar options binaires

Publié par options binaires

le 23/01/2012 à 16:52:36

genial l'outil ! merci

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
php5 - class
Mise a jour
22/11/2010
Visualisation
vu 3728 fois
Public
Internaute
Auteur de la publication
Fobec
Admin
Auteur de 261 articles
|BIO_PSEUDO|
Commentaires récents

Publié par Fobec dans logiciel

Souhaitez-vous d'informations sur le logiciel foWhoisClient ou sur l'utilisation des Whois ?

Publié par Fobec dans tuto

Je ne maitrise pas du tout WordPress ...
un plugin a l'air sympa http://wordpress.org/extend/plugins/scripts-gzip/, en parcourant le code source, j'ai vu des pistes pour integrer Gzip sous WordPre...

Publié par Vivien Blasquez dans news

Le pagerank traduit la popularité d'un site, donc si il est important. Après ce n'est qu'un indicateur, et si il a eu ses heures de gloire, il n'est aujourd'hui qu'un critère parm...

Publié par chuchunain dans tuto

Petite correction dans votre code. Le premier graphe genere avec 15 valeurs aleatoires devrait faire appel au graphe "myGraph" et non "graph" sinon l'objet canvas ne recoit rien. m...

Publié par robbie dans tuto

desole pour le message en multiple j'ai eu un ptit beug