De las versiones anteriores de la pregunta, existe esto: navegar por el sitio web con la dirección IP en lugar de localhost , que describe más o menos lo que he hecho hasta ahora ... Tengo la IP local funcionando. Luego encontré ngrok, y aparentemente no necesito conectarme a través de IP.
Lo que intento hacer es exponer mi sitio web que se ejecuta en localhost a Internet. Encontré una herramienta que hará esto: ngrok.
Al ejecutar el sitio web en Visual Studio, el sitio web se inicia en localhost / port #. Ejecuto el comando "ngrok http port #" en la línea de comando. Todo parece comenzar bien. Genero un par de URL, y la url de inspección ngrok (localhost: 4040) funciona.
El único problema es que cuando voy a las URL generadas, recibo un error HTTP 400: solicitud incorrecta nombre de host inválido. Este es un error diferente que cuando ejecuto "ngrok http wrongport #", que es un error de host no encontrado ... así que creo que algo bueno está sucediendo. Simplemente no puedo decir qué ...
¿Hay algún paso que me falta para exponer mi sitio a Internet a través del servicio de túnel? Si lo hay, no puedo encontrarlo en la documentación de ngrok.
fuente
ngrok http https://localhost:44362 -host-header="localhost:44362"
ngrok http https://localhost:44392 -host-header="https://localhost:44392"
eliminar https: // del parámetro -host-header resolvió mi problema. GraciasEl siguiente comando solucionará el problema
fuente
app.UseHttpsRedirection()
en su clase de inicio para evitar un redireccionamiento temporal 307.Esto no funcionó para mí. podrías hacer lo siguiente:
Para IIS Express
En VS 2015: vaya a la
.vs\config\applicationhost.config
carpeta en su proyectoEn VS 2013 y versiones anteriores: vaya a
%USERPROFILE%\My Documents\IISExpress\config\applicationhost.config
Encuentra el enlace que dice:
Para mí fue un proyecto que se ejecuta en el puerto 5219
cámbielo a
IIS Express ahora aceptará todas las conexiones entrantes en ese puerto.
Desventaja: necesita ejecutar IIS Express como administrador.
o podría reescribir el encabezado del host en Ngrok:
fuente
Para
https
esto funciona:ngrok http https://localhost:<PORT> -host-header="localhost:<PORT>"
fuente
Lo más simple para mí fue usar iisexpress-proxy + ngrok.
Primero instalo
iisexpress-proxy
globalmente con npmnpm install -g iisexpress-proxy
Luego delego mi host local con él. Digamos, por ejemplo, que mi sitio se está ejecutando
3003
.iisexpress-proxy 3003 to 12345
¿Dónde12345
está el nuevo puerto http que quiero proxy?Entonces puedo ejecutar ngrok en él.
./ngrok.exe http 12345
¡Simplemente funciona! 😃
Pero creo que solo funciona con
http
. En este momento nohttps
suelo hacer pruebas, pero incluso si funciona, generalmente es mucho trabajo como siempre.fuente
Pasos.
Ejecute el comando en su consola desde el directorio ngrok.exe. ngrok http port, es decir, ngrok http 80 https://www.screencast.com/t/oyuEPlR6Z Set
URL de Ngrok a su aplicación.
Creará un túnel para su aplicación.
Gracias .
fuente