Estoy trabajando en un proyecto que quiero esconder del mundo detrás de la autenticación básica de Apache mientras está en desarrollo. El proyecto tiene un backend PHP y un frontend JS en diferentes hosts virtuales. Configuré con éxito la autenticación básica en el backend y la aplicación JS puede realizar solicitudes con la siguiente configuración ( 123.456.789 es la dirección IP de la aplicación JS):
<Directory "/some/backend/folder"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all AuthType Basic AuthName "Restricted Content" AuthUserFile /some/path/.htpasswd <RequireAny> Require valid-user Require ip 123.456.789 </RequireAny> </Directory>El host virtual de la aplicación JS envía solicitudes a un servidor de nodo que, en última instancia, maneja cualquier solicitud al backend, utilizando la siguiente configuración:
ProxyPreserveHost On ProxyRequests On ProxyVia On ProxyPass / http://0.0.0.0:3000/ connectiontimeout=600 timeout=600También quiero agregar autenticación básica a esto para que el mundo no pueda acceder a la aplicación frontend. He intentado agregar lo siguiente:
<Proxy *> Order deny,allow Allow from all AuthType Basic AuthName "Restricted Content" AuthUserFile /some/path/.htpasswd Require valid-user </Proxy>Lo que parecía funcionar al principio, sin embargo, todas las solicitudes que funcionaban anteriormente al servidor back-end ahora son 401, lo que es bastante confuso.
¿Alguien sabe lo que está pasando aquí? ¿El acto de agregar autenticación básica al host virtual frontend del proxy arruina la configuración de RequireAny en el host virtual backend?
¡Cualquier sugerencia es muy apreciada! Gracias