tengo un requerimiento; cualquier acceso con /admin está bloqueado en el firewall, pero las personas acceden a él con combinaciones de mayúsculas como /Admin o /adMin o algo como esto.
Para bloquear el acceso de administrador para el exterior, es difícil hacer una regla de firewall para todas las combinaciones, por lo tanto, busque algún método en nginx para bloquear esto.
Tenga en cuenta que también debemos bloquear las rutas secundarias como /admin/img/one.jpg (las rutas secundarias distinguen entre mayúsculas y minúsculas, solo el administrador no distingue). La regla de firewall existente es bloquear todo el acceso externo para /admin y solo permite el acceso VPN.
Por favor, ayuda si se requieren más detalles. Actualizaré este ticket.
Puede usar una expresión regular que no distinga entre mayúsculas y minúsculas, ya sea usando el operador ~* o usando una serie de clases de caracteres.
Cualquiera de los siguientes debería funcionar:
location ~* ^/admin { return 403; } if ($request_uri ~* ^/admin) { return 403; } rewrite ^/[Aa][Dd][Mm][Ii][Nn] /goaway.html redirect;Cada una de las expresiones regulares anteriores coincide con el comienzo del URI, por lo que los URI que contienen subrutas también coincidirán.
Consulte este documento para location , este documento para if y este documento para rewrite .