Configuré la autenticación de contraseña para el sitio web en .htaccess y me gustaría hacer una excepción cuando la solicitud entrante sea para un URI en particular. Básicamente funciona hasta un punto.
El .htaccess se ve así:
AuthType Basic AuthName "Password" AuthBasicProvider web-user <RequireAny> Require valid-user Require env let_me_in </RequireAny>He añadido:
SetEnvIf Request_URI "/path1/path2/?rest" let_me_inpero en este caso se omite el signo de interrogación y me autoriza sin contraseña para /ruta1/ruta2/ rest pero no para /ruta1/ruta2/ ?rest
si lo cambio para incluir un carácter de escape como este:
SetEnvIf Request_URI "/path1/path2/\?rest" let_me_intodavía requiere autorización para /path1/path2/?rest
xxx.xxx.xxx.xxx - - [07/Apr/2020:21:01:50 +0200] "GET /path1/path2/?rest HTTP/1.1" 401 693 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/Safari"/ruta1/ruta2/ es la raíz del sitio web
Como solución temporal, he permitido todo el acceso para la dirección IP definida, pero esta no es la forma deseada en que debería funcionar.
SetEnvIf Remote_Addr xxx.xxx.xxx.xxx let_me_in¿Cómo puedo hacer que SetEnvIf Request_URI funcione correctamente para este caso en particular?