Esto es difícil de encontrar dentro de la documentación debido al volumen del contenido y aspectos a tomar en cuenta pero es fundamental para un exitosa configuración del servicio de búsqueda.
Supongamos el siguiente escenario:
Instalamos SharePoint, creamos la granja y luego creamos la primera o principal aplicación Web normalmente con el nombre del servidor y no con el espacio de nombre definitivo. Eso será un problema más adelante, y le cuento porqué. Cuando definimos las fuentes de contenido o content sources de SharePoint, lo debemos de hacer con el nombre de la aplicación Web predeterminado o default, es decir no el nombre del servidor, pero luego si agregamos un nuevo espacio de nombre que lo debemos de hacer extendiendo la aplicación Web. Cuando realizamos una consulta en una lista, o sitio no funcionará, sino solamente a nivel de todos los sitios. Aunque asignemos un dirección URL en la opción Assign server results, no funcionará. Si ya tenemos este escenario no todo esta perdido, podemos corregirlo de la siguiente forma:
1) Haga clic sobre Configuración
2) Luego sobre Configuración del Sitio
3) Configuración de la búsqueda
4) Reemplace el valor de /_layouts/OSSSearchResults.aspx. por SearchCenter/Pages/results.aspx
5) Reinicie el indice y vuelva a realizar la indagación o crawling y listo.
Ahora como debimos planearlo desde el principio.
Primordialmente debemos de planear que tipo de contenido vamos utilizar en el portal y organizarlo de tal forma que nos permita definir reglas que eviten el crecimiento desmedido de la indagación el espacio de nombre que utilizaremos para acceder el portal y que esta sea configurado como host header y como la zona predeterminada de la aplicación Web el cual será el mismo nombre para la indagación para evitar el problema mencionado arriba.
Las reglas de indagación son necesarias para incluir o excluir el contenido de las fuentes de contenido, pero estas reglas pueden afectar el tamaño de la base de datos. (También el detener y reiniciar la indagación incrementa el volumen de las bases de datos, lo mejor siempre es reiniciar el índice, y realizar una indagación desde cero).
La siguiente regla es importante a considerar:
-
Crawl complex URLs (URLs that contain a question mark (?)).
Ya que si tenemos un url de un sitio público, esta intentará indagar todos las posibles opciones que tenga el sitio web. Además también puede ser que estemos indagando un contenido de reportes que maneja por cada reporte una cantidad de posibles parámetros con lo que incrementaría el contenido de la base de datos. Por ello es importante tomar en cuenta el contenido que estamos indagando y las reglas que especifiquemos.
Entonces el procedimiento para crear la aplicación Web de nuestro portal que evite el problema de arriba mencionado es como sigue:
1) Registrar en el servicio de DNS el espacio de nombre para el portal, por ejemplo portal.contoso.com
2) Probar en el servidor de SharePoint que este nombre se resuelva haciendo un ping a portal.contoso.com
3) Crear la aplicación Web sobre el puerto 80 y colocar como host header el nombre portal.contoso.com
4) Ir al Servicio de aplicaciones y seleccionar el servicio de búsqueda y configurar una regla de indagación o Crawl Rules, que incluya el nombre registrado en el host header. http://portal.contoso.com/* y con la opción incluir con la única opción Crawl SharePoint content as HTTP pages habilitada, con ello será suficiente para incluir el contenido de las páginas y los documentos.
5) Ejecutar la indagación del contenido y realizar las pruebas necesarias para validar que esta incluido. En el caso de las listas hay que indicarle que debe de incluirse en la indagación para que lo haga, así que deberá tomar en cuenta eso.
Bueno eso es todo por ahora. Espero que tenga éxito en la indagación del contenido de los sitios de SharePoint.
Search4Fun!,
Juan Manuel Herrera
Otras referencias útiles para este problema pueden consultarse en:
http://olenicksharepoint.wordpress.com/2012/03/01/the-problem-with-contextual-search-scopes/