Use a variável SetEnv na regra de reconfiguração do htaccess

2

No nosso bloco de host virtual httpd.conf, temos

SetEnv MAGE_RUN_CODE "v2_us_es"

É possível usar essa variável em um arquivo .htaccess

Algo como

RewriteRule ^sitemap\.xml$ /media/sitemaps/%{MAGE_RUN_CODE}/sitemap.xml [L]

Isso é possível?

Obrigado!

Jeff

Editar: eu vi os links a seguir, mas nenhum deles faz o que estou tentando fazer

link link link

    
por jroberts 26.02.2013 / 23:43

2 respostas

3

A sintaxe para usar variáveis de ambiente no mod_rewrite é %{ENV:VARNAME} :

RewriteRule ^sitemap\.xml$ media/sitemaps/%{ENV:MAGE_RUN_CODE}/sitemap.xml [L]
    
por 27.02.2013 / 07:05
0

Variáveis SetEnv apenas retornam strings vazias em um RewriteRule. Eu acho que isso é porque eles não foram definidos quando o RewriteRule é executado. Mas SetEnvIf irá funcionar, então você pode tentar:

SetEnvIf Request_URI ^.*$ MAGE_RUN_CODE=v2_us_es

e, em seguida, use-o com:

RewriteRule ^sitemap\.xml$ /media/sitemaps/%{ENV:MAGE_RUN_CODE}/sitemap.xml [L]

O Request_URI ^.*$ bit no SetEnvIf apenas verifica se a página solicitada é algo ou nada, então sempre define a variável.

Provavelmente seria melhor configurado como um 'RewriteMap' no arquivo de configuração do Apache.

    
por 23.02.2016 / 15:30