Tengo .htpasswd
protección en mi sitio que funciona bien. Cuando llamo a un script que pone todo en caché a través de PHP CLI, aparece un error 401. El problema aquí es el .htpasswd protection
.
En la llamada CLI defino mi env( ENV=cron
), ¿cómo puedo decirle .htaccess
que no solicite el nombre de usuario y la contraseña si env=cron
?
Mi código actual en el .htaccess
es:
<IfDefine env!=cron>
AuthType Basic
AuthName "internal"
AuthUserFile /path/to/my/.htpasswd
Require valid-user
</IfDefine>
Estoy usando Apache 2.2 y no 2.4, lo que haría esto mucho más fácil. ¿Cuál es la forma correcta de resolver este problema?
Respuesta1
En Apache 2.2 es posible que puedas hacer esto con la ayuda de la Satisfy
directiva.
Por ejemplo:
AuthType Basic
AuthName "internal"
AuthUserFile /path/to/my/.htpasswd
Require valid-user
Order allow,deny
Allow from env=cron
Satisfy Any
(El valor predeterminado es Satisfy All
)
La <IfDefine>
directiva (en Apache 2.2) solo puede verificar si los parámetros se han configurado en la línea de comando cuando se inicia Apache. No puede verificar las variables de entorno.