Somme toute logique, vous remontez d'un répertoire lors de la réécriture. Ce SetEnv est fixé par un htaccess situé un répertoire en-dessous, donc il ne s'applique qu'à lui-même et à sa sous-arborescence, pas au parent.
C'est dans le répertoire de plus haut niveau qu'elle devrait être définie. Sinon, en l'état, pour la faire suivre, le seul moyen c'est le flag E :
RewriteRule ^i$ ../index.php [L,E=MAVARIABLE:%{ENV:MAVARIABLE}]
Mais, a priori, on pourrait la récupérer via $_SERVER['REDIRECT_MAVARIABLE'] à l'issue de la réécriture.
PS : les variables d'environnement Apache sont bien exportées à et accessibles de PHP.
Partager