présentation

Un webring est une liste circulaire de sites web liés par un thème commun. Il peut s’agir d’un hobby, d’une passion ou simplement d’un groupe d’amis. L’idée derrière les webrings est simple : créer un réseau de sites web interconnectés pour faciliter la découverte et la navigation.

fabrication d'un webring

Il existe deux façons de créer un webring : la méthode manuelle et la méthode automatisée. La méthode manuelle consiste à demander à chaque membre du groupe de lier son site web aux sites web des autres membres, de manière à former une boucle. Par exemple, le site A lie vers le site B, le site B lie vers le site C, et le site C lie vers le site A.

implémentation technique

La méthode automatisée nécessite la mise en place d’un serveur web qui stocke un fichier JSON contenant la liste des sites web des membres. On peut alors créer des routes pour naviguer automatiquement entre les sites web. Voici un exemple de code utilisant un worker Cloudflare pour gérer les redirections :

import ring from './ring.json';
const {members} = ring;
export default {
  async fetch(request, env, ctx): Promise<Response> {
    const pathname = new URL(request.url).pathname;
    const referrer = new URL(request.url).searchParams.get('from') || request.headers.get('referer') || request.headers.get('referrer') || '';
    const currentMember = members.find(member => member.url === referrer);
    if (!currentMember) {
      return new Response('Member not found', {status: 404});
    }
    switch (pathname) {
      case '/next':
        const nextMember = members[(members.indexOf(currentMember) + 1) % members.length];
        return Response.redirect(nextMember.url, 302);
      case '/prev':
        const prevMember = members[(members.indexOf(currentMember) - 1 + members.length) % members.length];
        return Response.redirect(prevMember.url, 302);
      default:
        return new Response('Not Found', {status: 404});
    }
  },
};

avantages et limites

Les webrings offrent une façon amusante et simple de découvrir de nouveaux sites web et de se connecter avec des personnes partageant des intérêts communs. Cependant, la mise en place d’un webring peut nécessiter un peu de travail et de coordination, en particulier si le groupe est grand. De plus, il est important de considérer les aspects de sécurité et de confidentialité lors de la création d’un webring, en particulier si les sites web contiennent des informations sensibles.