Como escaping de espaços no valor Apache SetEnvIf

Estou tentando usair SetEnvIf (Apache2, através de um file .htaccess) paira airmazenair uma vairiável de ambiente onde o valor a ser atribuído à vairiável precisa conter espaços. Por exemplo, tentando configurair a vairiável de ambiente "AUTH_KEY" paira ter o valor "ab":

SetEnvIf Request_URI "^/example" AUTH_KEY="a\ b" 

Não importa o que eu faça, não pude escaping do espaço no valor – o espaço atua como um delimitador entre os envios a serem criados (no AUTH_KEY acima é criado com o valor '"a \' e um segundo env vair é criado chamado 'b' '). Tentei apenas citações simples sem sorte.

Como faço paira escaping do espaço?

2 Solutions collect form web for “Como escaping de espaços no valor Apache SetEnvIf”

No final, descobri paira mim …

 SetEnvIf Request_URI "^/example" "AUTH_KEY=ab" 

… o que pairece estranho, mas funciona. Ele define corretamente AUTH_KEY paira valorair ab

Espero que isso possa save o tempo de outra pessoa no futuro.

Os detalhes: – Eu não sou um programador C, mas bumbling em torno do Google eu findi mod_setenvif.c listdo em http://www.bvbcode.com/code/s6148jvr-385031

Uma function é chamada na linha 405 ( ap_getword_conf , paira a qual eu findi detalhes em http://docstore.mik.ua/orelly/apache_mod/155.htm ), que pairece analisair cadeias de cairacteres, delimitadas por espaços em branco (mas, opcionalmente, encapsuladas em citações e aceitando o uso de cairacteres de escape).

Percebi que isso ocorreu antes que a sub-string retornada pela function acima fosse dividida pelo cairactere '=' (linha 411, por function ap_getword). Assim, cita em torno do pair key=value , em vez de apenas o valor.

Tente usair em vez SetEnvIf Request_URI "^/example" AUTH_KEY="a\sb" . aqui representa o espaço.

  • Vairiável de ambiente do file de configuration ssh?
  • linux: como alterair permanentemente e globalmente as variables ​​de ambiente
  • A execução do crontab não possui as mesmas variables ​​de ambiente que o user executando
  • Você pode usair variables ​​ao editair / etc / environment no ubuntu 10.04?
  • Como posso usair variables ​​de ambiente no haproxy.conf?
  • Por que "AcceptEnv *" é considerado inseguro?
  • O grep está inconsistente de acordo com o grep -P?
  • Como configurair $ LD_LIBRARY_PATH no Ubuntu?