Eric DECORNOD wrote:
Dominique Asselineau a écrit :Johan Dindaine wrote on Wed, Aug 27, 2008 at 07:45:15PM +0100Bonjour, […]Bonjour,Bonjour,Je ne connais que le module Proxy avec les 2 directives ProxyPass et ProxyPassReverse qui fassent ça. Les enveloppes HTTP sont réécrites dans les 2 sens, pour la requête et la réponse donc, par le serveur"visible".Les dirrectives ProxyPass … et RewriteRule … [P] sont fortement similaires (on peux combiner ProxyPassReverse … et RewriteRule … [P] et [P] dépends de mod_proxy). Cependant seul le HTTP est réécrit, pas le contenu (HTML), ainsi les liens HTML absolus de la forme http://www.tata.com/page/truc.html ne seront pas transformés, mettant en défaut la solution mod_proxy…
en plus, seules quelques entêtes sont réécrites. si on fait de la gestion de session en utilisant des cookies ou des entêtes referrer, il faut éviter d'y avoir des chemins qui ne sont valables que sur l'un des serveurs. En général, mieux avoir les mêmes chemins sur les deux serveurs et éviter les trucs du genre
http://www.toto.com/ = http://www.tata.com/qqchose/
Pour ce faire, il faudrait en plus réécrire le contenu.
ce qui est problématique (entre autres chose: problème du calcul du Content-length qui doit être envoyée dans les entêtes, or on ne la connait pas avant réécriture complète), mais surtout un peu lourdingue. Et si je ne m'abuse, mod_proxy_html n'est pas "supporté" par la fondation Apache.
c.f. http://httpd.apache.org/docs/2.0/mod/mod_proxy.html#proxypassreverse PS: quand on a la maîtrise du site « caché », il est plus simple de s'assurer qu'il n'y ait aucune référence parasite qui traîne.
tout à fait.Dans le cas contraire, mieux vaut éviter cette gymnastique car ça donne vite mal à la tête :)