
Soy muy nuevo en Nginx y tengo la siguiente configuración en Nginx
server {
location /api {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Ahora supongamos que si el acceso del usuario hostname/api/{{anything}}
debería serPermítales acceder
pero el usuario intenta acceder hostname/api/admin
y debería denegarlo. Entonces, ¿cómo puedo lograrlo?
Gracias
Respuesta1
Puede especificar las rutas en la configuración de esta manera: consulte el documento correspondienteaquí
<Location /api/*>
Order Allow,Deny
Allow from all
</Location>
<Location /api/admin>
Order Allow,Deny
Deny from all
</Location>
EDITAR: Se proporcionó una solución para Apache, pero se requería nginx.UbicaciónLa directiva también existe en nginx:
location /api/* {
allow all;
}
location /api/admin {
deny all;
}