Aunque ultimamente estot escribiendo en mi blog sobre SEO, he escrito este articulo porque me ha ocurrido algo muy curioso en Sharepoint 2007 y pienso que le puede llegar a pasar a mucha gente.
El asunto es que de repente mi portal en Sharepoint no funcionan las busquedas, sin haber modificado una sola linea de codigo ni haber modificado nada en la configuracion dejaron de funcionar las busquedas de MOSS.
Un detalle importante es que mi portal en el que me estaba dando el problema es una granja de servidores que balancea la carga a traves de un NLB.
Tras numerosas comprobaciones para ver si estaban bien creados los indices, si habia conectividad entre los frontales con los servidores de busqueda y si el usuario que realiza las busquedas tenia permisos, estaba ya bastante desesperado sin encontrar razon alguna de que estaba ocurriendo.
Asi que hablando con mi amigo Roberto, un fisico loco que lee libros de Chuck Palahniuk, compra comics Manga de forma compulsiva y utiliza Gadgets creados en Hong Kong, me paso la solucion a este misterioso problema.
El problema venia ocasionado porque habia instalado en mis maquinas el service pack 1 de .NET Framework 3.5, este service pack incluye una nueva funcionalidad de la seguridad de forma que si tenemos una granja de servidores con IIS 5.1 ó IIS 6.0 y accedemos al portal con autenticacion de Windows nos va a devolver el siguiente error:
HTTP 401.1 - Unauthorized: Logon Failed
La verdad que el error despista bastante, y por eso puede llevar a perder muchas horas pensando que es un problema de permisos. Pero en realidad el problema es que el service pack 1 de .NET Framework 3.5 habilita esa nueva caracteristica de seguridad y genera ese error al llamar a cualquier web service como por ejemplo el busquedas de Sharepoint.
La solucion al problema es muy sencilla y viene explicada en el kb 896861 de Microsoft, y consiste en lo siguiente:
- Haga clik en Inicio, clik en Ejecutar, escriba regedit, y entonces haga clik en Aceptar.
- En el Editor del Registro de Windows, localize y haga clik en la siguiente clave del Registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
- Haga clik con el boton derecho en Lsa, haga clik en Nuevo, y entoces pulse en DWORD.
- Escriba DisableLoopbackCheck, y presione ENTER.
- Haga clik con el boton derecho en DisableLoopbackCheck, y haga clik en Modificar.
- En la caja de texto escriba 1, y pulse Aceptar.
- Salga del Editor del Registro de Windows, y reinicie su maquina.
Tras realizar estos pasos hay que reiniciar el servidor, y ya volvera a funcionar correctamente nuestro Sharepoint.
En realidad, no se trata de un problema de Sharepoint, se trata tan solo de una medida de seguridad mas de IIS, que puede llegar a generar este problema si tenemos una granja de servidores con MOSS. Pero como hemos podido comprobar la solucion es sencilla y efectiva.
Asi que espero que este articulo os sirva de ayuda, y podais solucionar el problema que a mi me ha llevado bastante tiempo averiguar que estaba pasando.
Que la fuerza os acompañe!!!