Cerrar indización de buscador del sitio a través de ingreso de HAProxy de Kubernetes

En Kubernetes, los recursos de Ingress se utilizan frecuentemente como controladores de tráfico, proporcionando acceso externo a los servicios dentro del clúster. Ingress es fundamental para enrutar el tráfico entrante a tu servicio; sin embargo, pueden existir escenarios en los que desees evitar que los buscadores indexen el contenido de tu servicio: podría ser un entorno de desarrollo o algo similar.

Este artículo de blog le guiará a través del proceso de bloqueo de la indexación de su sitio en el Ingress de Kubernetes utilizando el archivo robots.txt, evitando que los robots de buscadores crawlen y indexen su contenido.

Prerrequisitos

Para proseguir con el tutorial, debería tener un manejo básico de los objetos básicos de Kubernetes, los recursos de Ingress y el controlador de Ingress oficial de HAProxy. También necesitará acceso al clúster de Kubernetes y los permisos necesarios para realizar cambios de configuración.

Ten en cuenta que para los propósitos de este artículo, asumo que el controlador de Ingress de HAProxy se ha establecido como el controlador predeterminado. De lo contrario, si no ha seleccionado HAProxy como el controlador predeterminado, debe agregar la opción ingressClassName a todos los ejemplos de código de Ingress.

Paso 1: Crear un recurso de Ingress en Kubernetes

En la primera parte de nuestro viaje, configuraremos un pequeño recurso Ingress para exponer nuestro servicio fuera del cluster Kubernetes. Ten en cuenta: por el momento, todos los rastreadores web tendrán acceso al servicio. Para aplicar el código de abajo, use el comando kubectl apply -f ingress.yaml.

YAML

 

Paso 2: Modificar la Configuración de Ingress

El archivo robots.txt se utiliza para controlar cómo los buscadores indexan documentos. Su especificación indica qué URLs pueden acceder los rastreadores de buscadores de su sitio web. El archivo más básico que restringe el acceso al servicio web se parece a esto:

Plain Text

 

HAProxy no requiere que agregues este archivo a tu servidor web o sitio web. Esto se puede lograr con la siguiente configuración, que debe agregarse a la sección backend para el grupo específico de servidores:

Plain Text

 

Las Anotaciones K8S regulan todas las operaciones sobre la configuración del frontend/backend de HAProxy para un solo recurso Ingress. Puede encontrar la lista completa de anotaciones de HAProxy en la documentación oficial en GitHub.

En nuestro caso, necesitamos usar haproxy.org/backend-config-snippet con el fragmento de HAProxy para bloquear cualquier indexación. Para hacer esto, edita, abre tu archivo YAML de recurso Ingress, y agrega la siguiente anotación a la sección de metadatos:

YAML

 

Paso 3: Aplicar los Cambios de Configuración

Después de modificar el archivo YAML de Ingress, guárdalo y aplícelo al cluster Kubernetes con el comando kubectl: kubectl apply -f ingress.yaml.

El controlador Ingress detectará los cambios y actualizará la configuración en consecuencia.

Paso 4: Verificar la Configuración

Examine el archivo robots.txt generado para confirmar que la prevención de indexación está funcionando correctamente. El controlador Ingress genera este archivo en base a las anotaciones que proporciona.

Obtenga la IP externa o el dominio asociado con su recurso Ingress y agregue /robots.txt a la URL. Ejemplo:

Plain Text

 

Como podemos ver, la respuesta contiene un archivo robots.txt que evita la indexación de cualquier motor de búsqueda.

Paso 5: Prueba de Prevención de Indexación

Para verificar que los motores de búsqueda no están indexando su sitio, puede ejecutar una búsqueda de su sitio web en los motores de búsqueda populares. Tenga en mente que los resultados de búsqueda a veces tardan en reflejar los cambios, por lo que el estado de la indexación puede no actualizarse completamente de inmediato.

Conclusión

Las anotaciones hacen que sea fácil evitar el índice de buscadores mientras se utiliza HAProxy Kubernetes Ingress. Agregando la anotación adecuada a su recurso Ingress, puede prohibir que los robots de buscadores crawlen y indexen el contenido de su sitio web. Un enfoque similar también se puede utilizar con otros controladores de ingreso, como Nginx, Traefic y otros. Una anotación similar también se puede utilizar para los recursos K8S Gateway API, que están reemplazando activamente a las Ingress.

Por último, robots.txt es una manera tradicional para que los creadores de sitios web especifiquen si sus sitios deben o no ser crawleados por varios bots. Sin embargo, resulta que los crawlers de AI de modelo de lenguaje grande (LLM) compañías suelen ignorar el contenido de robots.txt y crawlen el sitio de todos modos. Para evitar situaciones como esta, utilice la seguridad de contraseña, noindex, o características de balanceador de carga empresariales como balanceador de carga HAProxy AI, que también se pueden configurar como una anotación de K8S.

Source:
https://dzone.com/articles/close-site-search-indexing-via-kubernetes-haproxy