Je n’ai jamais créé de proxy auparavant. J’utilise l’hébergement mutualisé, donc pour définir les directives Apache, je dois utiliser .htaccess. Puis-je utiliser .htaccess pour faire quelque chose comme ci-dessous? Des limitations?
ProxyRequests Off ProxyPass /img/ http://internal.example.com/img/ ProxyPass /app/ http://internal.example.com/app/ ProxyPassReverse / http://internal.example.com/
Vous ne pouvez pas utiliser un ProxyPass
dans un fichier htaccess . La documentation indique qu’elle n’est applicable que dans le contexte:
Contexte: configuration du serveur, hôte virtuel, répertoire
qui exclut htaccess (vous ne pouvez pas avoir un bloc
dans htaccess). Cependant, vous pouvez utiliser ProxyPassReverse
pour réécrire en interne le champ Location des requêtes mandatées qui provoquent une redirection. Vous aurez juste besoin d’utiliser le drapeau P
de mod_rewrite au proxy au lieu de ProxyPass
. Donc quelque chose comme:
RewriteEngine On RewriteRule ^/?img/(.*)$ http://internal.example.com/img/$1 [L,P] RewriteRule ^/?app/(.*)$ http://internal.example.com/app/$1 [L,P] ProxyPassReverse / http://internal.example.com/
Pour être clair, vous ne pouvez pas utiliser ProxyPass
ou ProxyPassReverse
dans le fichier htaccess, mais vous pouvez utiliser ProxyPassReverse
avec les règles mod_rewrite qui utilisent l’indicateur P