Serveur de cache proxy

ordago

Serveur de cache proxy


Actuellement, nous utilisons un serveur distant pour demander du contenu dynamique et statique. Par exemple:

 http://myremoteserver.com/getContent.php?id=1 http://myremoteserver.com/image1.png 

Nous aimerions utiliser un serveur proxy avec ces deux utilisations de cas:

  • Si le serveur distant est en panne, une version en cache de notre demande est retournée.
  • Nous aimerions « détourner » certaines des demandes, donc si nous demandons:

     http://myproxyserver.com/image1.png 

    notre serveur peut être en mesure de renvoyer une image différente de image1.png . Idéalement, l’image renvoyée pourrait être déterminée par un programme.

Savez-vous si quelque chose comme ça existe déjà? De cette façon, nous n’aurions pas besoin de le réimplémenter.

Modifiez pour clarifier un peu:

Les requêtes dynamiques telles que http://myremoteserver.com/getContent.php?id=1 peuvent renvoyer des résultats différents en fonction de ses paramètres. La réponse serait un fichier JSON. Pour id=1 un JSON est généré, pour id=2 un autre JSON est généré, etc. Selon l’heure à laquelle la demande est effectuée, différents résultats peuvent être obtenus pour les mêmes paramètres.

Dans notre programme, nous avons un fichier de configuration qui a quelque chose comme ceci:

 server="http://myremoteserver.com" 

et nous aimerions le remplacer par

 server="http://myproxyserver.com" 

Idéalement, ce serveur proxy devrait essayer de renvoyer la même réponse que le serveur distant. Ce serveur proxy demandera donc le serveur distant. Si le serveur est en panne, il renverra sa réponse mise en cache, sinon retournera la même réponse que le serveur distant.

Pour certains cas exceptionnels, disons

 http://myremoteserver.com/image1.png http://myremoteserver.com/image2.png http://myremoteserver.com/image7.png 

nous aimerions que différentes images soient retournées, par exemple image1000.png , image1001.png , image1002.png respectivement.

Angelo Fuchs

Comment voulez-vous faire la différence entre les deux? Tout avec un? en elle est dynamique? Ou par extension? Apache peut le faire pour vous, mais pour comprendre les mods requis et leur configuration, vous avez besoin de plus de détails dans votre question.

ordago

Merci pour votre réponse, j’ai édité ma question avec plus de détails. Merci également d’avoir pointé Apache, nous nous demandions s’il serait possible de générer un .htaccess avec quelques règles mod_rewrite pour y parvenir. On dirait que cela peut être la bonne direction.

Izzy ♦

Vous devriez surtout jeter un œil au module Apache mod_proxy et à sa directive ProxyPassMatch . Je ne l’ai pas essayé moi-même, mais cela ressemble à quelque chose que vous devriez considérer 🙂

ordago

Merci, je ne savais pas que mod_proxy existait 🙂 Je vais certainement l’examiner.

Réponses


 Adrien

WinGate possède un cadre de stratégie événementielle assez puissant qui vous permet de le faire. Vous pouvez modifier des demandes, détourner des demandes ou servir des demandes directement à partir d’un fichier local (ou même CGI, par exemple PHP) au lieu du serveur distant.

Nous offrons un support gratuit, ainsi qu’une licence gratuite pour 10 utilisateurs simultanés.

Avertissement: je travaille pour Qbik qui sont les auteurs de WinGate.

 

#de, caché, proxy, serveur

 

wiki

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *