2010-02-15 6 views
8

Para una aplicación basada en Zend Framework, uso apaches SetEnv en .htaccess. Yo uso esta en la prueba, puesta en escena y los servidores de producción, así:Apache SetEnv precede a REDIRECT_. ¿Lo que da?

SetEnv APPLICATION_ENVIRONMENT production 

en el servidor intermedio que no podía leer este env var en PHP. Sin embargo, cuando hice un var_dump($_ENV) en php me dieron el valor, pero la clave estaba marcado al principio con REDIRECT_ convertirse

REDIRECT_APPLICATION_ENVIRONMENT 

¿Alguien puede explicar por qué ocurre esto y cómo puedo evitar esto?

Respuesta

7

Supongo que tiene reglas mod_rewrite en su .htaccess también para Zend? Creo que puede ser mod_rewrite anteponiendo eso cuando hace una redirección para que el valor no sea anulado por ninguna configuración nueva con la nueva URL.

+0

Supongo que es correcto. Puede que tengas razón acerca de mod_rewrite, pero no creo que los otros servidores muestren este comportamiento también, y tienen exactamente la misma configuración de mod_rewrite. Tendré que verificarlo. Gracias hasta ahora. –

+0

@fireeyedboy De hecho, me sorprendió encontrar muy poco sobre este tema aparte de los comentarios de los usuarios en las publicaciones en el foro y no hay información de fuentes reales y confiables. Vi una o dos publicaciones sobre el hecho de que era una versión específica de Apache, ¿es el Apache de tu máquina de ensayo una versión diferente a tu desarrollador y producción? ¿Son su desarrollador y producción el mismo y no lo está haciendo en ninguno de esos? – nortron

+0

@fireeyedboy, ¿puedes explicarme algo más? ¿Hiciste algo para resolver esto? –

2

Tuve el mismo problema y fue porque estaba ejecutando PHP como cgi en mi Apache.

Después de habilitar mod_php, pude acceder a mi variable sin ese prefijo.

Cuestiones relacionadas