Un peu plus d’infos sur YOURLS

Voici les principales fonctionnalités de YOURLS
  • Publique (tout le monde peut créer des URLs raccourcies) ou privé (juste vous)
  • Mots-clés d’URL séquentiels ou personnalisés
  • Bookmarklet pratique pour raccourcir et partager facilement des liens
  • Statistiques : historique des clicks, tracking des referrers, géo-localisation des visiteurs
  • Une API pour les développeurs

Prérequis

  1. Un serveur avec le module mod_rewrite activé
  2. Au moins PHP 4.3 (voire 5 si vous voulez que l’outil de partage dans l’admin fonctionne correctement sans avoir à tripatouiller les fichiers php, ce qui complexifierai considérablement les mises à jour, cf “Bon à savoir” plus bas)
  3. Au moins MYSQL 4.1
  4. Note: YOURLS peut aussi tourner sur Nginx (En savoir plus, en anglais)

Installation/Mise à jour

Premièrement, récupérez la dernière version de YOURLS sur google (à l’heure d’écriture de cet article, c’est la 1.4).

Cas d’une première installation :

  1. Décompresser l’archive contenant YOURLS
  2. Renommer includes/config-sample.php en includes/config.php
  3. Ouvrez includes/config.php avec un éditeur de texte brut (comme Notepad) et entrez les différents paramètres demandés (voir “Configuration” sur le site de YOURLS)
  4. Téléchargez les fichiers décompressés sur votre serveur à la racine (dossier public_html ou www par exemple)
  5. Créez la base de données en utilisant les informations entrées dans includes/config.php (ou vous pouvez utiliser une base déjà existante)
  6. Pointez votre navigateur sur http://votresite.com/admin/

Cas d’une mise à jour

  1. Faites une copie de votre fichier /includes/config.php
  2. Détruisez tous les fichiers dans votre répertoire YOURLS (le .htaccess aussi, selon l’auteur, mais je suis chez OVH et j’ai eu besoin d’en avoir un, cf. “Bon à savoir”)
  3. Décompresser l’archive YOURLS, téléchargez les fichiers sur votre serveur
  4. Renommer config-sample.php en config.php et entrez les paramètres demandés. Vous pouvez reprendre les informations depuis votre ancien fichier de configuration mais ne repartez pas de ce fichier, vous risqueriez des oublis/ajouts, utilisez le nouveau fichier de configuration.
  5. Dans votre nouveau fichier config.php, ajoutez les defines pour YOURLS_DB_TABLE_URL et YOURLS_DB_TABLE_NEXTDEC présents dans votre ancien fichier de configuration
  6. Faites une sauvegarde de votre base de données !
  7. Pointez votre navigateur sur http://votresite.com/admin/ et suivez les instructions
  8. Une fois que la mise à jour est terminée, retirez le define pour YOURLS_DB_TABLE_NEXTDEC de votre fichier de configuration
  9. L’auteur promet qu’à la prochaine mise à jour il ne sera pas nécessaire de modifier le fichier de configuration à nouveau :)

Configuration

Pour savoir comment renseigner les différents paramètres du fichier config.php, je vous invite à consulter la page “Configuration” sur le site de YOURLS

Bon à savoir

J’ai eu quelques surprises en mettant à jour vers la 1.4, et même hors mise à jour il y a de toute façon quelques petites choses à savoir pour vous éviter l’arrachage de cheveux.

.htaccess

Il n’est pas expliqué grand chose sur le .htaccess dans le site, si ce n’est que lors d’une mise à jour il faut l’enlever…

Or sur le site dédié à YOURLS chez Google Code, il y a une page du Wiki qui y est consacrée, et pour avoir testé sans (chez OVH), je peux témoigner qu’il vaut mieux l’utiliser (apparemment sur 1and1 et goDaddy aussi).

De plus, il vous sera utile pour activer le PHP 5 (par exemple chez OVH où il n’est pas activé par défault mais reste disponible) ou autres options que vous pourriez vouloir utiliser (compression gzip, etc)

PHP 5 ou pas ?

A priori, tout fonctionne effectivement à partir de la 4.3, MAIS avant que je ne passe en 5, chez OVH donc, je ne pouvais pas utiliser l’onglet “Partager” de chaque URL, à cause de la fonction htmlspecialchars_decode qui ne fonctionne apparemment pas en 4.3…

Si vous ne voulez pas/ne pouvez pas activer le PHP 5 chez votre hébergeur, il vous faudra alors la redéfinir pour PHP 4 (mais attention aux mises à jour par la suite !).

Je m’excuse si l’explication est obscure ou inexacte, mais en gros c’est ce que j’ai compris de mes lectures et tests, n’hésitez donc pas à me corriger si besoin ! :)

Aller plus loin

Plugin WordPress

Il existe un plugin WordPress (aussi compatible avec bit.ly, tr.im, is.gd, et tinyurl.com) pour générer automatiquement (et publier sur twitter) les URLs raccourcies de vos billets (ou pages) lors de leur publication.

J’attends juste la même chose pour Dotclear 2… des intéressés ? :)

YOURLS et Tweetie 2

Vous le savez maintenant, je ne peux plus m’en cacher, je suis un peu accro à mon iPhone

Vous savez donc que je préconise d’utiliser Twittelator, qui est riche en fonctionnalités…

Cependant, les créateurs de la nouvelle version de Tweetie ont fait un excellent boulot, et ont eu une vraiment bonne idée lorsqu’ils ont pensé à proposer l’utilisation d’une API perso pour le raccourcissement des URLs… pis l’interface est super jolie et bien faite, au point que je suis passée sur Tweetie 2 pour l’instant, mais chuuuttt :)

Bref, pour utiliser votre toute nouvelle installation YOURLS avec Tweetie 2 (ou tout autre client Twitter pour iPhone qui vous permette d’utiliser votre propre API bien sûr, je serai d’ailleurs curieuse de savoir si il y en d’autres, vous en connaissez ?), il vous faudra utiliser une URL formatée de la manière suivante (remplacez les informations en majuscules par vos propres informations) :

http://VOTRESITE.COM/yourls-api.php?action=shorturl&url=%@&username=VOTRE-NOM-DUTILISATEUR&password=VOTRE-MOT-DE-PASSE&format=simple

En revanche, vous ne pourrez pas utiliser de mot clé personnalisé dans ce cas :’(

Merci à Eugene Gordin pour l’URL, que j’ai simplement traduite :)

Une interface publique sympa et un flux RSS

Malheureusement, pour toutes les qualités qu’il a, YOURLS ne propose pas par défaut de page publique autre qu’une page de formulaire permettant de raccourcir des URLs, ce qui n’est peut-être (probablement ?) pas du tout votre besoin/envie…

J’avais trouvé il y a quelques temps un tutoriel expliquant comment créer son propre fichier d’accueil public listant les URLs, et je m’en étais servie pour créer l’accueil d’unsl.im (j’ai été totalement incapable de retrouver l’article en question, c’est pourquoi je ne le cite pas…), puis je m’étais attaqué au flux RSS (une petite recherche sur google) et depuis, comme je le disais en introduction, on m’a demandé plusieurs fois ces fichiers, signe qu’il y a un réel besoin.

Plutôt que de continuer à les envoyer par mail, je me suis dit que j’allais les mettre à disposition ici car de cette manière je pourrai les versionner (en fonction de la version de YOURLS, on commencera donc par la v1.3), et vous pourrez aller les récupérer sans attendre que je répondre à vos mails :)

En plus, ça me permettra d’enfin utiliser la fonction de fichiers attachés de Dotclear 2 sur ce blog… ;)

Vous pourrez donc trouver une archive incluant un fichier index-sample.php (vierge de toute présentation, je vous laisse vous amuser avec les CSS, etc) et un fichier rss-sample.php qui génère un flux RSS simple.

Conclusion

Voilà, j’espère que tout ceci vous sera utile et vous permettra, à vous aussi, de vous affranchir des services externalisés et de gérer vous-mêmes vos URLs raccourcies !

Si vous avez des questions concernant cet article ou des informations intéressantes à ajouter (et notamment des réponses à mes questions), n’hésitez pas !
(mais encore une fois, je ne peux pas faire le “service après-vente technique”)

A bientôt pour d’autres articles et références ! :)