OpenSearch

Créer son propre moteur de recherche dans un navigateur

La technologie OpenSearch, créée par Yahoo! est maintenant devenue un standard. Elle permet de créer son propore moteur de recherche et de l'intégrer directement dans un navigateur. Voyons comment la mettre en place.

Les cookies

Gérer les cookies en shell UNIX

Les cookies permettent d'échanger des messages entre un client et un serveur. Les cookies sont des fichiers stockés sur la machine du client et permetttent de stocker des informations utilisables par le serveur lors de connexions ultérieures.

En shell, la création et l'utilisation de cookies n'est pas difficile si ce n'est qu'elles nécessitent une syntaxe précise.

HTTP Sécurisé

Chiffrer une connexion à un serveur HTTP

Par défaut, les informations circulant entre un serveur HTTP et les clients sont non chiffrées, c'est-à-dire qu'une personne écoutant le réseau peut récupérer une copie de ces informations. Si, en général, ces informations n'ont pas d'intérêt à être chiffrées, un serveur web public étant accessible par tous, en clair, il peut être parfois utile de chiffrer une connexion, par exemple lorsqu'il y a un échange de mot de passe pour entrer dans une section plus restreinte. Si le mot de passe circulait en clair, rien n'empêcherait une personne mal intentionnée de s'identifier à votre place. Il faut donc sécuriser la connexion en la chiffrant.

La version d'OpenSSL fournie avec FreeBSD supporte les protocoles de sécurité réseau Secure Sockets Layer v2/v3 (SSLv2/SSLv3), et Transport Layer Security v1 (TLSv1) et peut être utilisée comme bibliothèque de chiffrement d'usage général.

Générer un sitemap

Générer automatiquement un fichier sitemap.xml pour un site web

Le sitemap.xml est un fichier nécessaire pour améliorer le référencement d'un site web. Il peut être maintenu manuellement. Mais il pourrait être utile de se libérer de cette tâche en le générant automatiquement.

Le web statique et le web dynamique

Utiliser le Web statique au bon moment pour améliorer les performances

Le Web est de plus en plus dynamique. Non seulement dans le sens humain - ce qui est une bonne chose - mais aussi dans le sens technique, c'est-à-dire la machinerie qui supporte le Web.

Et que cette machinerie soit dynamique n'est pas toujours une bonne chose. Elle l'est même de moins en moins.

Comment expliquer que le plus petit des blogs ne soit que l'interface d'une base de données sur laquelle est greffée un moteur de rendu ?

Ce moteur de rendu cherche des informations à droite (contenu réel), à gauche (menus, options, publicités,…), reconstitue une page web et l'envoie au client et ceci à chaque fois, que le contenu ait changé ou pas.

Même pour une page qui ne change pas, il n'y a plus de statique. Dans le meilleur des cas, le statique est rendu par un intermédiaire mettant en cache les contenus finaux qui n'ont pas été modifiés.

Web

Cache Manifest: Un site web plus rapide

Anticiper le chargement des pages en utilisant le cache

La version 5 du HTML apporte son lot d'améliorations. Ainsi, pour il est possible d'utiliser un cache pour un mode hors connexion. Mais nous pouvons détourner l'usage de ce cache (manifest) pour accélérer la navigation sur un site web.

Le manifest est une option apparue avec le HTML 5 afin d'indiquer au navigateur toutes les ressources à charger dans le cas d'une déconnexion.

En effet, les applications destinées aux téléphones portables subissent régulièrement des déconnexions du fait du déplacement, Si vous prenez un ascenseur, ou que votre métro passe dans un tunnel, ce qui coupe votre connexion. Si la page n'est pas chargée, l'affichage et l'usage ne se font pas correctement car un navigateur, pour des raison de rapidité affiche ce qu'il a dès qu'il l'a téléchargé. C'est pourquoi, il n'est pas rare de voir le texte avant les images...

Lorsqu'il est employé, le cache force le navigateur à d'abord charger les fichiers dont il a besoin avant d'afficher la page. Ainsi, en cas de déconnexion intempestive, l'usager n'est pas perturbé et il peut utiliser l'application web (ou le site), le temps de la déconnexion. En effet, si vous étiez occupé à rédiger un courriel au moment de la déconnexion, il serait dommage de perdre le message et d'être obligé de tout recommencer.

Conversion de l'encodage URL en UTF-8

Décodage de application/x-www-form-urlencoded en UTF-8 correspondant

Lors d'une communication entre un navigateur et un serveur Web, les données hors us-ascii sont converties dans un format spécial, x-www-form-urlencoded par défaut.

Par exemple la chaîne l'hiver est froid est convertie en l%E2%80%99hiver est froid.

la chaîne %E2%80%99 traduit l'entité ’ mais nous voyons bien que les deux valeurs sont différentes. Pour traduire la valeur URl en valeur humainement exploitable, il faut faire un opération de conversion.

Les CGI

Créer et utiliser les CGI en shell UNIX

Les CGI permettent l'interfaçage entre le web et le serveur. Cela permet de tariter des formulaires, générer des pages dynamiquement, ajouter de l'intelligence. Les CGI peuvent être fait avec n'importe quel langage : PHP, perl... et le shell, bien entendu.

Mon choix personnel s'est porté sur le shell car je connais bien ce langage et je ne me voyais pas ajouter un langage supplémentaire sur mon serveur. Etant très mobile, cela me permet de créer mes CGI n'importe où, à partir du moment où je dispose d'un UNIX.

D'autre part, cela permet de transposer aisément des shells réalisés en local vers une utilisation délocalisée sans avoir à transcrire dans un autre langage.