Gopher
Gopher est une norme de communication numérique conçue en 1991, concurrente du HTTP utilisée dans le World Wide Web et désormais désuète. La norme Gopher permettait de distribuer, chercher et récupérer des documents sur le réseau Internet, et de se connecter sur un serveur Telnet. Une petite communauté d'utilisateurs développe toutefois aujourd'hui cette technologie pour faire vivre ce protocole. Ceux-ci mettent en avant la simplicité d'utilisation et sa faible consommation de données (Gopher ne supporte pas les technologies telles que le CSS, le JavaScript ou les cookies par exemple).
Historique
modifierLancé en 1991, Gopher est utilisé pour accéder au portail Internet de l'université du Minnesota. Ses créateurs sont Mark McCahill, Farhad Anklesaria, Paul Lindner, Daniel Torrey, Adam Huminsky et Bob Alberti. Gopher est le nom d'un rongeur Goldy Gopher (en), mascotte de l'université.
Gopher permet de consulter l'annuaire téléphonique de l'université, lire des textes en ligne, télécharger des fichiers binaires, faire des recherches par mots clés et des connexions à des serveurs Telnet. Un logiciel Gopher est aussi créé. Il ne lit que les données textuelles, et évolue vers le mode graphique, Gopher+.
Le succès de la norme Gopher et du logiciel consacré dépasse le cercle de l'université et gagne la totalité du monde universitaire relié à l'Internet[réf. souhaitée], puis les administrations gouvernementales. Gopher devient une norme Internet en ; sa version évoluée, Gopher+, en par la RFC 1738[2].
Gopher est en compétition avec les logiciels et normes WAIS et Archie, ainsi que le HTTP et le Web créés à la même époque. Ce dernier, utilisant le langage HTML, arrive plus tard mais supplante les autres normes à partir de 1995. Depuis les années 2000, la norme Gopher est encore utilisée par quelques passionnés.
En 2019 est lancé le projet Gemini comme une alternative à Gopher[4].
Licence
modifierEn mars 1993, l'université du Minnesota décide de demander des redevances sur l'utilisation du serveur, à l'inverse du CERN où est développé le Web (). Il est possible que la licence payante soit la cause de l'effondrement de Gopher. Dans son mémoire Internet Project Gopher, The Rise and the Fall of Gopher, Robert Alberti conteste ce point de vue et montre que le déclin de Gopher coïncide plutôt avec l'adjonction de la balise image (<IMG>
) dans le HTML, qui jusque là affichait uniquement du texte (tout comme Gopher). Ce n'est qu'en 2000 que l'université de Minnesota libère le code source et les place sous la licence publique générale GNU[5].
Logiciels pour Gopher
modifierNavigateurs supportant Gopher en mode graphique
modifier- Mozilla Firefox avec le module OverbiteFF, OverbiteWX ou OverbiteNX (ce dernier nécessitant un logiciel installé sur le même ordinateur pour fonctionner) pour Firefox 56 et supérieur
- SeaMonkey avec le module OverbiteFF
- Konqueror avec l'extension kio_gopher
- Camino
- Internet Explorer avant la version 6, et la version 6 en réactivant le support dans la base de registres[6], prend en charge le protocole Gopher.
- WebPositive sous Haiku peut utiliser Gopher par le Service Kit depuis la révision hrev47571.
Navigateurs supportant Gopher en mode texte
modifier- Lynx : mode semi-graphique.
- ELinks : mode semi-graphique.
- www : mode ligne de texte. Le plus ancien des navigateurs Internet disponibles.
- snarf : permet de télécharger un fichier situé sur un serveur Gopher, depuis un terminal.
Logiciels supportant Gopher en mode texte
modifierLogiciels pour créer un site Gopher
modifier- Aftershock — écrit en Java.
- Bucktooth — serveur Gopher moderne écrit en Perl.
- Geomyidae — écrit en C. Domaine public.
- GN
- GoFish
- GOGOPH Server — serveur gopher moderne écrit en Java basé sur Netty (JBoss), GPL.
- GOPHSERV — cross-platform, GPLv3, FreeBASIC.
- Gopher Cannon — Windows 32 et 64 bits, gratuiciel, écrit en .NET 3.5.
- Goscher — écrit en Scheme.
- mgod
- Motsognir — écrit en C, multiplateforme, GPLv3.
- PyGopherd — Serveur Gopher+ écrit en Python.
- PyGS
- gophrier — écrit en C, GPL.
- Gophernicus — supporte AIX, GNU/Linux, MacOSX, BSDs et Haiku ; écrit en C, BSD.
- Flask-Gopher — Module supplémentaire pour le framework Flask en python, permettant à Flask d'utiliser le protocole Gopher
Passerelles entre Gopher et Web
modifierDes sites Web permettent d'afficher des pages Gopher depuis un navigateur Web : Floodgap Public proxy, Gopher Proxy proxy. Certains sites Gopher fonctionnent en double mode, Gopher et Web. Un proxy, comme squid, peut faciliter l'accès au monde Gopher depuis un réseau local.
Références
modifier- (en) « The Internet Gopher Protocol (a distributed document search and retrieval protocol) », Request for comments no 1436,
- (en) « Uniform Resource Locators (URL) », Request for comments no 1738,
- (en) « The gopher URI Scheme », Request for comments no 4266,
- (en) « Projet Gemini FAQ », sur Projet Gemini (consulté le )
- UMN Gopher(d) released under the GPL!, news:comp.infosystems.gopher
- « Floodgap HELP: Using a web browser to access gopher space » (consulté le )
Voir aussi
modifierLiens externes
modifier- (en) L'actuel serveur racine de l'espace gopher, contient un moteur de recherche des sites gopher
- Phlog Le weblog version GOPHER.
- Veronica — Le système de moteur de recherche pour le protocole Gopher.
- Gopher+ — Extensions proposées au protocole Gopher.
- GopherVR
- Jugtail — Un système de moteur de recherche alternatif pour le protocole Gopher. Jugtail était autrefois connu comme Jughead.
- SDF Public Access Unix System — Une organisation à but non lucratif qui fournit l'hébergement de Gopher libre et gratuit.
- Un article sur le protocole Gopher
- (en) Le mémoire de Robert Alberti — Les débuts de Gopher par l'un de ses créateurs.