Pregunta

Me gustaría probar mi aplicación web en otros navegadores. He instalado PC virtual para hacer exactamente eso. El servidor de desarrollo ASP.NET no permite conexiones remotas, por lo que la PC virtual (otra computadora en la red) no puede acceder al sitio web.

encontré este Publicación que se inició pero no hubo solución.

Entiendo que usar localhost no funcionará. Escuché sobre el uso de las máquinas IP, pero ¿cómo obtengo esa IP correcta? ¿Mira mi administrador del enrutador Lynksys?

Si tuviera que llegar tan lejos como para obtener mi IP, estoy seguro de que el servidor ASP.NET Dev no permite conexiones remotas. ¿Cómo habilito que lo haga?

¿Fue útil?

Solución

Estoy haciendo algunas conjeturas sobre tu configuración aquí, así que ten con:

Si su máquina virtual es XP Professional, Vista Business, Windows 7 Professional o mejor, entonces debería poder ejecutar II localmente en la máquina de desarrollo y acceder a ese servidor web desde otra máquina que está en la misma red a través del nombre de la máquina virtual.

Del mismo modo, si está haciendo desarrollo en una máquina real y desea utilizar diferentes máquinas virtuales para acceder a la aplicación web, debe asegurarse de tener IIS instalado, crear un nuevo sitio web en IIS y debe navegar al Aplicación web a través del nombre de la máquina de sus máquinas virtuales.

De cualquier manera, no intente usar el servidor web Builtin desde Visual Studio, simplemente publique su sitio para IIS y trabaje con él de esa manera.

Buena suerte y espero que esto ayude a algunos.

Otros consejos

La respuesta es: no(*). No puede acceder al servidor de desarrollo ASP.NET en una máquina desde otra, incluso si abre el puerto TCP de Windows Firewall.

Del artículo de MSDN "Servidores web en el desarrollador web visual":

Está diseñado específicamente para servir o ejecutar páginas web ASP.NET en el escenario de host local (navegar desde la misma computadora que el servidor web).

En otras palabras, el servidor de desarrollo ASP.NET servirá páginas a las solicitudes del navegador en la computadora local. No servirá páginas a otra computadora. Además, no servirá archivos que están fuera del alcance de la aplicación.

(*) Tendrá que ejecutar su sitio desde su IIS instalado localmente ... o hacer el agradable hack utilizando unware gratuito descrito en esta publicación de blog:

iPhone accediendo al servidor de desarrollo de Visual Studio ASP.NET

Usar Puerto SPI delantero Para aceptar las conexiones del dispositivo, haga lo siguiente:

Establezca "puerto local" en el número de puerto en el que se conectará el dispositivo, generalmente uso 8080 fuera de hábito
Establecer "host remoto" en localhost
Establezca "puerto remoto" en el puerto de servidor de desarrollo ASP.NET

Haga clic en el botón "Activar" para comenzar a aceptar conexiones

(Nota: asegúrese de haber comenzado el programa con derechos de administrador)

Configurar un puerto con Rinetd
Deatils aquí: http://blog.waynehartman.com/articles/218.aspx

Otra respuesta si no quieres usar IIS (o túneles): https://stackoverflow.com/a/12008223/1552178

Use Fiddler o similar en su host: configure su navegador en la VM del cliente para usar el proxy y luego use localhost: dev_port como de costumbre en el cliente.

¡Todas las solicitudes del cliente obtienen el proxy en su máquina de desarrollo que enruta a localhost en la máquina Dev y el servidor de desarrollo ASP.NET cree que la solicitud es de su máquina de desarrollo!

Estoy respondiendo a esta vieja pregunta para ayudar a las personas a que funcione. sin IIS.

1. Primer paso

Tienes que descargar Violinista.

Una vez que Fiddler se descarga e instale, ábralo.

Entra Herramientas-> Opción fiddler-> pestaña de conexión-> y verifique "Permitir computadoras remotas para conectarse" :

enter image description here

Reiniciar a Fiddler.

2. Segundo paso

Después de esto, en la otra PC en la red o la VM, Abra Internet Explorer-> Opciones de Internet-> Pestaña de conexión-> Configuración de LAN-> Verifique "Use un servidor proxy para su LAN" :

enter image description here

  1. La dirección es la dirección IP de su máquina de desarrollo.
  2. Y pon el puerto 8888

Ahora, puede acceder al servidor web ASP.NET desde otra PC en la red (tal vez tenga, más configuración para hacer, como firewall, puerto sin restricciones, etc., ¡pero este es un buen comienzo)!

Para acceder a él -> http://localhost.:54814

  • ¡No olvides el punto adicional después de "localhost"! (Sobrescribe el localhost local)
  • El puerto, "54814" en mi caso, es el puerto del servidor web ASP.NET.

NOTA :

  • Para probar si el poder funciona, puede probar esto: http://localhost.:8888
  • Tal vez olvidé señalar algunas configuraciones, pero siempre depende de la infraestructura de red.

Solución de trabajo para Linux

Esto debería funcionar si está ejecutando un servidor de desarrollo ASP.NET en Windows en una VM o en otro host y desea acceder a él desde Linux

En Windows Machine

Por alguna razón, no puede conectarse directamente al puerto de servidor de desarrollo ASP.NET, debe proxylo localmente primero:

Usar Puerto SPI delantero Para aceptar las conexiones del dispositivo, haga lo siguiente:

Establezca "puerto local" en el número de puerto en el que se conectará el dispositivo, como 8089 establecido "host remoto" en localhost
Establezca "puerto remoto" en el puerto de servidor de desarrollo ASP.NET

Haga clic en el botón "Activar" para comenzar a aceptar conexiones

(Nota: asegúrese de haber comenzado el programa con derechos de administrador)

En la máquina Linux

Localmente reenviar el puerto localhost 8089 a la IP de Windows (reemplace GUEST_IP_HERE con la IP correcta):

iptables -t nat -A OUTPUT -m addrtype --src-type LOCAL --dst-type LOCAL -p tcp --dport 8089 -j DNAT --to-destination GUEST_IP_HERE:8089
iptables -t nat -A POSTROUTING -m addrtype --src-type LOCAL --dst-type UNICAST -j MASQUERADE

Esto es necesario porque el servidor de Dev busca específicamente localhost en la solicitud y no responderá a http://GUEST_IP_HERE:8089 Del anfitrión

Abra un símbolo del sistema y escriba; "Ipconfig" esto le dará la dirección IP de su máquinas.

Si desactiva su firewall (para el puerto de desarrollo ASP.NET al menos) debería poder escribir en el navegador de la PC virtual http://192.168.1.3:3243/default.aspx

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top