Esta es una pregunta de Apache con la que probablemente te hayas cruzado antes. Quiero tener un paquete de origen que pueda implementar en mi estación de trabajo, mi servidor de transición y mi servidor de producción, pero para que cargue diferentes configuraciones de .htaccess basadas en lo que era la URL.¿Cómo puedo tener un bloque de htaccess condicional?
Tenga en cuenta que estaba usando un kludge con una llamada IfModule, pero eso no funcionará con nuestro nuevo servidor de producción porque comparte todos los mismos módulos que mi servidor de transferencia.
Nota Necesito agrupar SetEnv con estas reescrituras. Actualmente, si usa RewriteCond, solo se relaciona con la siguiente RewriteRule, pero no con SetEnv debajo.
Cabe señalar que la directiva php_value en Apache no se puede llamar en el primer ejemplo, solo las variables de entorno. En el segundo ejemplo, esta es la mejor opción porque puedes literalmente definir tu servidor. Sin embargo, esto solo funciona si controlas el entorno. Si está en un host compartido, no tiene forma de controlar pasar un parámetro al proceso httpd. Por lo tanto, busca lo contrario de esto con. –
Encontré que puedo usar IfDefine porque mi servidor de prod es 100% controlado por mí y puedo meterme con el parámetro OPTION/etc/sysconfig/httpd y hacer que OPTIONS = "- D prod". En el servidor intermedio, que es compartido, tuve que usar IfDefine! Prod y luego apilar un ifModule expires_module debajo de él. En mi estación de trabajo, tuve que usar IfDefine! Prod seguido de IfModule! Expires_module. Esto me dio un archivo .htaccess que funcionaba en desarrollo, montaje/prueba y producción. –
Un poco confuso, me hizo pensar que las variables simples del entorno podrían usarse en ifdefine – Dan