mod_rewrite: accès au chemin de l'URL dans RewriteCond

Comment puis-je correspondre au chemin de l'URL de

RewriteCond

dans

.htaccess

?

J'aimerais cela parce que j'essaie de faire un sous-répertoire de mon serveur Web Proxy transparent + Demandes de cache à un autre serveur et je voudrais écrire

.htaccess

comme ça:

RewriteCond "%{ENV:CACHE_BASE}/%{URL_PATH}" -f
RewriteRule (.*) "%{ENV:CACHE_BASE}/$1" [L]
RewriteRule (.*) "download_and_cache.cgi?$1"

Ainsi, les demandes de requête qui existent déjà à Keshe seront envoyées de Apache, Et les demandes de fichiers qui ne sont pas à Keshe seront traitées

download_and_cache.cgi

scénario (qui les met dans la cache).

NB: Je ne peux pas utiliser

%(REQUEST_URI}

, Parce que si

.htaccess

Vit à

/foo/

, Interroger par

/foo/README.txt

vérifiera le cache pour

$CACHE_BASE/foo/README.txt

, au lieu de

$CACHE_BASE/README.txt

Comment ça devrait.
Invité:

Agathe

Confirmation de:

Mon Mod_rewrite un peu rouillé, mais vous ne pourrez pas utiliser
http://httpd.apache.org/docs/2 ... ebase
Directive pour la comptabilité "/ foo"

Ou je pense que vous pouvez utiliser un lien de retour quelque chose comme ça

RewriteCond %{REQUEST_URI} foo/(.*)
RewriteCond "%{ENV:CACHE_BASE}/%1" -f

Ou, si je suis correctement suivi de tout cela, réécrivez d'abord dans le cache, puis vérifiez si vous devez d'abord la télécharger. Comme ça:

RewriteRule foo/(.*) "%{ENV:CACHE_BASE}/$1" [L]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule (.*) "download_and_cache.cgi?$1"

Si vous pouvez utiliser
http://httpd.apache.org/docs/2 ... ource
Cela ferait ce qui précède, un peu plus propre.

Pour répondre aux questions, connectez-vous ou registre