La batallita del agüelo:
El otro día creé un proyecto del tipo "sitio Web" en Visual Studio 2008 para probar un sitio Web
con acceso a datos en una base de datos de Access.
Pero al ejecutar la aplicación, me daba error de que no se podía mostrar (el error era de que no
se encontraba el sitio), vamos lo que se conoce como un problema de resolución de nombres DNS, es
decir, no se encuentra el sitio porque no se puede resolver el nombre. Tal como te muestro en la
figura 1:
Figura 1. Error al mostrar el sitio Web
Como yo uso Windows Vista Ultimate, el usuario es del grupo de administradores y no uso el UAC (User
Account Control).
Para
desconectar el UAC de Windows Vista, seguí los pasos que publiqué hacer unas semanas (el link
anterior te llevará al artículo en cuestión).
El problema, es que antes no me ocurría esto... pensé que podía ser por varias causas, a saber:
- Porque tengo el Service Pack 1 de Windows Vista
- Porque desinstalé el Visual Studio 2005 y se quedó algo "raro"
La cuestión es que volví a reinstalar el Visual Studio 2008.
Pero nada, la cosa seguía igual.
Probé en otro equipo que tenía el Windows Vista, pero con el UAC activado, y funcionaba, aunque
en ese caso, me daba otro error, pero que pude resolverlo.
El error (o errores porque fueron dos) es que ¡¡¡me pedía autenticación para entrar en localhost!!!
Bueno, esto es fácil de solucionar, le puse los datos del usuario y password de Windows y entró.
El segundo error que me dio (en el otro equipo que sí funcionaba) era que en la página Web me
mostraba un número de puerto y el servidor de desarrollo de ASP.NET usaba otro.
Esto lo pude solucionar como te explico en:
El número de puerto del Servidor de desarrollo de ASP.NET es diferente al mostrado en el explorador.
De todas formas, una de las soluciones para este problema de "inconsistencia" de los números de
puertos, era poner en el navegador el mismo puerto del servidor de desarrollo de ASP.NET (ASP.NET
Development Server). Esto funcionó en el "otro" equipo, pero no en el portátil con el que yo suelo
trabajar.
La solución
Probando en una de las máquinas virtuales que tengo con Windows XP y Visual Studio 2008, todo
funcionaba bien.
Pero claro, no era cuestión de andar cambiando de mi "máquina de trabajo" a la virtual... para una
vez, vale, pero no era cosa de "olvidarse" del problema y tener que andar haciendo estos cambios de
"máquinas".
Así que... hice lo que algunos no hacen, y busqué en Internet por este problema, para ver cuál podía ser la solución.
En mi búsqueda, me encontré con este artículo:
ASP.NET Development Server Problems Under Vista.
Solo que ahí explicaba cómo solucionar ese problema con el FireFox.
Pero como no encontraba otra respuesta más concreta, y a los que pregunté me dijeron que nunca
habían tenido ese problema, pues... la puse en práctica... a ver si funciona...
¡Y funcionó!
¿Cuál es la solución?
Pues lo que comentaba Rob Bazinet en su artículo sobre crear una entrada en el registro para deshabilitar el
IPv6.
Es decir, abres el regedit.exe, vas a la clave: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\tcpip6\Parameters
creas un valor DWORD llamado DisabledComponents y le asignas el valor decimal 255 (hexadecimal FF).
Reinicias el equipo y... ¡funcionando que es gerundio!
Todo esto para usarlo con el Internet Explorer 7, que ya te digo que el FireFox no lo tengo
instalado.
El problema que seguía teniendo era que al ejecutar la aplicación (o sitio) Web, en el explorador
me mostraba un número de puerto, y el servidor de ASP.NET me mostraba otro, y la única forma de que
se mostrara el contenido de las páginas Web era usando el puerto del servidor de ASP.NET.
La solución para este otro problema es la que te muestro aquí:
Indicar el puerto a usar
en el servidor de desarrollo de ASP.NET (en realidad, el título de ese "artículo" es: El número de puerto del Servidor de desarrollo de ASP.NET es diferente al mostrado en el explorador).
Nota:
Si en lugar de crear la aplicación usando el sistema de archivos (como es en este caso
problemático), creo una aplicación alojada en el servidor IIS, todo funciona a las mil maravillas.
Este problema, solo se me ha dado al crear el sitio Web usando el sistema de archivos, que es cuando
se usa el servidor de desarrollo de ASP.NET (ASP.NET Developer Server).
Espero que te sea de utilidad.
Nos vemos.
Guillermo