¿Cómo se accede a un sitio web que se ejecuta en localhost desde el navegador de iPhone?

266

Estoy trabajando en un sitio web móvil y me gustaría probarlo con el navegador de mi iPhone. Mi máquina con Windows 7 y mi iPhone están en la misma red inalámbrica. ¿Cómo accedo a localhost desde el iPhone? En este momento me sale un error 404.

carneros
fuente
1
asegúrese de apagar el firewall
ajahongir
En otro / dispositivo móvil en la misma red, visite: " IP_Address: PORT ". Los detalles están en las respuestas que siguen.
Arshin

Respuestas:

243

Acceder a localhost desde el iPhone simplemente hará un loopback / intentará conectarse a sí mismo (si es compatible con eso).

Lo que debe hacer es encontrar la IP de su máquina de escritorio (por ejemplo, si es Windows, vaya a Command Prompty escriba ipconfigo vaya Network and Sharing Centrey busque connection status.

Una vez que tenga su ip, simplemente visítela desde su navegador, por ejemplo http://192.168.0.102.

Es posible que deba abrir el puerto 80 (o cualquier puerto en el que se esté ejecutando su sitio web) en la seguridad de entrada de su firewall si está ejecutando uno.

Nota: No se olvide del puerto de aplicación , si lo que quiere es para depurar la aplicación en el navegador del iPhone como: http://192.168.0.102:3000. En este ejemplo, 3000 es el puerto predeterminado utilizado por ReactJS.

Wil
fuente
1
"Acceder a localhost desde el iPhone simplemente hará un loopback / intentará conectarse a sí mismo (¿si es compatible con eso?)" - Por supuesto que es compatible. Casi la misma respuesta que la mía ahahahaha;)
cusspvz
1
Iphone, como otros dispositivos basados ​​en Unix, Symbian y Win, tienen la necesidad de bucle invertido debido a que algunas aplicaciones se conectan con otras a través de la dirección de bucle invertido TCP / IP. Casi todos los dispositivos con red tienen la capacidad de bucle invertido.
cusspvz
2
Si la prueba es para WordPress, entonces tenemos que cambiar la URL del sitio web a http://xxx.xxx.xxx.xxx/wordpressWordPress Dashboard.
Rajul
1
En realidad, intente acceder a localhost: port a un puerto abierto en su máquina. Funciona en mi configuración.
orip
3
IINM, esto no funcionará para depurar aplicaciones web progresivas, que generalmente tienen trabajadores de servicios, ya que los trabajadores de servicios requieren https, y eso requiere certificados. Con Android, reenvía los puertos para que aún puedas usar localhost y así no necesites la molestia de obtener certificados.
Max Waterman
174

Si está utilizando Mac, vaya a Preferencias del sistema> Red y use su dirección IP en lugar de localhost. También puede usar el número de puerto. En mi caso, tengo un servidor que se ejecuta en el puerto 1448 y puedo obtener una vista previa de 192.168.1.241:1448 con iPhone.

MacOsNetworkSettings

Fatih Acet
fuente
55
Esta respuesta es un equilibrio perfecto entre comp sci geek y visual design geek. Bien hecho.
Roralee
40
Mantenga presionada la tecla Alt / Opción mientras hace clic en el elemento de la barra de menú de Wi-Fi. Esto proporciona mucha información adicional sobre su conexión, incluida su dirección IP local.
William Robertson
No funciona si su servidor usa virtualhost (nombre de host múltiple)
Trinh Hoang Nhu
2018: Network Utility> Información (primera pestaña)> Dirección IP (en Información de la interfaz): ¡funciona! thnku
webkit
2
Para acceder a un sandbox de desarrollo, tuve que cambiar el host sandbox a en 0.0.0.0lugar de localhost. stackoverflow.com/a/35419631/1054633
Ben
28

puedes probar ngrok.io . Funciona según el mismo principio que localtunnel.
Descargue la aplicación para su sistema operativo. e intenta correr como:

para linux:

./ngrok http 8000

8000 es el número de puerto en el que se ejecuta su aplicación.

para ventanas:

 ngrok.exe http 8000
Manish Gupta
fuente
2
En teoría, esto puede responder la pregunta, pero sería mejor incluir aquí las partes esenciales de la respuesta para futuros usuarios y proporcionar el enlace para referencia. Las respuestas dominadas por enlaces pueden volverse inválidas a través de la descomposición de enlaces .
Mogsdad el
Gracias, edité la respuesta. Pero todavía es enlace dominado. Sin embargo, uno siempre puede google en caso de que el enlace esté roto.
Manish Gupta
28

Prueba esto:

  1. Presione Windows+R
  2. Abierto cmd
  3. Run ipconfig (Old) ifconfig (New)
  4. Verifique la IP de su tarjeta de red inalámbrica
  5. Vaya a iPhone y navegue a " http://xxx.xxx.xxx.xxx/ " a través de su navegador.
    (xxx.xxx.xxx.xxx es su IP)

Nota: debe establecer el permiso en la configuración de su firewall, si corresponde.

cusspvz
fuente
¡Salvaste mi día!
Alexandr
21

Si está utilizando MAMP , ingrese su dirección IP (digamos 192.0.0.63) en su navegador Safari de iPhone, seguido del número de puerto 8888 (por ejemplo, 192.0.0.63:8888) y podrá ver su sitio local en tu iPhone

Y si está utilizando un servidor WAMP , nuevamente en su navegador safari de iPhone simplemente ingrese la dirección IP (digamos 192.0.0.63) y listo. Pero no olvide eliminar el deny from allarchivo httpd.conf de su servidor WAMP. Si busca la línea allow from 127.0.0.1, sobre ella o debajo de ella verá deny from all; simplemente elimine esta línea y reinicie su servidor WAMP y eso debería hacerlo en el trabajo.

ecko
fuente
1
El número de puerto de MAMP depende de su configuración en la pestaña 'servidor'.
Jennie Ji
Solo quiero agregar una nota: si lo intentó y no funcionó, intente cambiar la red a otra diferente, en mi caso, cambié a mi punto de acceso 4G de mi teléfono y funcionó normalmente
Tho Vo
21

Si estás usando una Mac,

  1. Conecte su iPhone a su Mac a través de USB.

  2. Vaya a Utilidad de red (cmd + espacio y escriba "utilidad de red")

  3. Vaya a la pestaña "Información"

  4. Haga clic en el menú desplegable que dice "Wi-Fi" y seleccione "iPhone USB" como se muestra en la foto.

Utilidad de red, seleccione iPhone USB

  1. Encontrará una dirección IP como "xxx.xxx.xx.xx" o similar. Abra el navegador Safari en su iPhone e ingrese dirección_IP: número_puerto

    Ejemplo: 169.254.72.86:3000

[NOTA: Si el campo de dirección IP está en blanco, asegúrese de que su iPhone esté conectado a través de USB, salga de Network Utility, ábralo nuevamente y verifique la dirección IP.]

arjunkm
fuente
Funciona de maravilla. Otra característica interesante es que puede utilizar el inspector para el desarrollo.
gazdagergo
3
Si no puede ver la dirección IP, haga lo siguiente: 1. active el punto de acceso personal en el iPhone (conectado mediante USB) 2. apague el wifi en su Mac. De esta forma, el iPhone se convierte en enrutador y verá la dirección IP nuevamente.
gazdagergo
Esta es la única respuesta que funcionó en mis 10 años, ¡muchas gracias!
LAdams87
Esto funciona, pero parece innecesario ya que el uso de la dirección IP de la Mac funciona igual de bien (es decir, la dirección IP que obtienes cuando ambos están en el mismo WiFi y seleccionas Wi-Fi (en0) de la lista anterior).
Tom Auger
20

Si no está en la misma red, puede usar esta herramienta de terceros llamada localtunnel

http://localtunnel.me/

Básicamente, enruta su contenido a través de otro servidor y usted accede a eso.

Nikos
fuente
Esto ya estaba cubierto en una respuesta existente .
Mogsdad
10

Si prefiere escribir un nombre de host en lugar de una dirección IP

Primera opción (forma rápida):

Deberías poder navegar http://my-macbook-pro.local/mywebsiteen tu iPhone. Ver https://stackoverflow.com/a/9304094/470749

Este enfoque tiende a funcionar porque el dominio '.local' es una palabra reservada especial.

Segunda opción:

Ver http://xip.io/ , que es un servicio gratuito y es muy conveniente. No es necesario configurarlo.

Luego, cuando navegue a http://mysite.app.192.168.1.130.xip.io (usando un navegador en su servidor o en cualquier dispositivo en su LAN), mostrará la página alojada en 192.168.1.130.

Y si está ejecutando Homestead en la máquina que existe en esa IP, navegue a http://mysite.app.192.168.1.130.xip.io:44300 (con el puerto en la URL) de alguna manera muestra la página alojada en el Máquina virtual Homestead Vagrant en 192.168.10.10. Bastante impresionante.

Tercera opción (que no depende de un servicio y es flexible pero más complicada y solo funciona si tiene un enrutador con DD-WRT):

Si tiene un servidor local que aloja múltiples sitios diferentes a los que le gustaría acceder a través de diferentes nombres de host (a través de iPhone), puede hacerlo.

  1. En su sistema operativo, cambie el nombre de su computadora a algo corto, significativo y fácil de recordar, como "RYANDESK".
  2. En la configuración de su enrutador DD-WRT:
    1. En Services > Services > Static Leases, configure la dirección MAC de su servidor para que apunte a una dirección IP específica, como 192.168.1.108. Establezca su nombre de host para que sea el mismo que nombró su computadora anteriormente. El "tiempo de arrendamiento del cliente" puede ser de 1440 minutos.
    2. Asegúrese de presionar Savey tambiénApply Settings con cada cambio. ("Guardar" no parece aplicar automáticamente la configuración). Si obtiene un error, probablemente se deba a que el diseño de la GUI de DD-WRT es engañoso y presionó innecesariamente "Agregar" para arrendamientos estáticos.
    3. En DHCP Server > User Domain, elija "LAN y WAN". Para "Dominio LAN", configúrelo en una cadena corta, como sus iniciales sin ningún signo de puntuación (por ejemplo, "xyz"). Probablemente evite usar la palabra "local" ya que puede haber conflictos. No utilice dominios del mundo real como "com", "org", "net", etc.
  3. En Services > Services > DNSMasq, habilite DNSMasq y "DNS local" y configure "Opciones adicionales de DNSMasq" para que sea algo así como: address=/project1.xyz/project2.xyz/192.168.1.108(dónde xyzestá lo que haya elegido en el paso anterior, la IP apunta a la máquina específica project1y project2es cualquier nombre de host al que desee apuntar cada uno de esos proyectos (como diferentes configuraciones de Nginx).
  4. Asegúrese de que su archivo HOSTS no tenga ninguna entrada en conflicto con lo que hemos hecho. Si no sabe qué es un archivo HOSTS, probablemente esté bien.
  5. Vacíe su caché DNS y libere y renueve su IP local. Entre y salga del modo avión en el iPhone para vaciar la caché DNS allí también.
  6. Ahora puede navegar http://ryandesk.xyzen su iPhone (o en su navegador de escritorio), y se resolverá en su servidor local. Espero que haya configurado su Nginx o Apache o lo que sea para escuchar ese nombre de host.

    https://wiseindy.com/it/how-to-access-your-pcs-using-dns-names-with-dd-wrt/ http://www.howtogeek.com/69696/how-to-access- your-machines-using-dns-names-with-dd-wrt /

Ryan
fuente
6

Para usuarios de Mac, abra la Utilidad de red (puede encontrar esto escribiendo cmd + espacio que abrirá Spotlight y luego en Spotlight comience a escribir Network Utility). Seleccione Network Utility, cuando esté abierto, su dirección IP se encontrará junto a la etiqueta Dirección IP. Entonces, básicamente con la IP, puede ingresar a cualquier puerto abierto en su Mac local, por ejemplo, si su sitio web se ejecuta localmente en localhost: 3000 y su dirección IP es 154.31.92.0, entonces desde su teléfono puede obtener el sitio web simplemente escribiendo 154.31. 92.0: 3000 en un navegador.

PD: esto solo funciona si el teléfono y la computadora están en la misma red

Kenigbolo
fuente
Esto funcionó muy bien. En Network Utility seleccioné Wi-Fi en lugar de la Ethernet predeterminada y luego mi dirección era 10.0.1.3. En mi Mac tenía un programa ejecutándose en localhost: 3004, así que en el iPad escribí 10.0.1.3:3004 y pude ver el sitio que se ejecuta localmente en mi Mac. Para casos más complejos con subdominios, como demo.mysite.local: 3004, tuve éxito con DNSMasq, pero es un proceso más complicado.
stahlmanDesign
5

WebpackDevServer localhost desde iphone

Si está utilizando una aplicación que se ejecuta en el nodo. puedes usar webpack como herramienta de compilación y usar su devserver incorporado

Puede usar webpackdevserver para iniciar su aplicación desde un servidor localhost y luego pasar su dirección localhost y el puerto de su elección.

webpack-dev-server --host 192.168.0.89 --port 3000

entonces desde tu iPhone puedes acceder usando

http://192.168.2.89:3000

Nota :: Su computadora portátil y iPhone deben estar en la misma red, y usted debe usar su dirección IP localhost.

Para Mac, cómo encontrar la dirección IP, puede consultar Obtener dirección IP local en node.js

Tarandeep Singh
fuente
5

Si está utilizando mac (OSX):

En tu mac:

  1. Terminal abierta
  2. ejecuta "ifconfig"
  3. Encuentre la línea con la dirección IP "192.xx.xx"

Si está probando su sitio web con la dirección: "localhost: 8888 / mywebsite" (depende de las configuraciones de MAMP)

En tu teléfono :

  1. Abra su navegador (por ejemplo, Safari)
  2. Ingrese la URL 192.xxx.xx: 8888 / mywebsite

Nota : debe estar conectado a la misma red (wifi)

Jibeee
fuente
3

Puede usar la ip de la computadora en lugar de http: // localhost .

Pero puede no ser accesible. Debe editar el httpd.conf (o archivo de configuración equivalente) de su software de servidor. No tengo php instalado en este momento, pero puede buscar con la palabra clave: "Permitir desde / / Directorio"

Nota: la IP de la PC donde se está ejecutando XAMPP debe ser una IP estática (no asignada por DHCP), de lo contrario, debe verificarla manualmente cada vez que reinicie la PC.

kyehan
fuente
3

Quería lograr lo mismo que la solicitud original, y busqué una respuesta aquí, y desactivé cada firewall y protección antivirus en vano.

Luego, encontré la siguiente declaración sobre IIS express en la documentación de microsoft: "IIS express no atiende solicitudes a un navegador en otra computadora, lo que facilita su aprobación en entornos corporativos".

En pocas palabras: deberá instalar IIS (no el IIS express entregado) para que su proyecto se vea fuera de su computadora.

Fuente: http://msdn.microsoft.com/en-us/library/58wxa9w5.aspx

Espero que esto sea útil para otras personas que se están volviendo locas al desactivar todas las funciones de seguridad en su computadora.

DrHooverCraft
fuente
2

Si está trabajando en un proyecto php, puede cambiar la base href:

<base href="<?php echo str_replace("localhost","192.x.x.x",HTTPS_SERVER);?>">

  • localhost o 127.0.0.1: dependiendo de su configuración
  • 192.xxx: su dirección IP local
  • HTTPS_SERVER: el href base anterior

Hacer eso es esencial para cargar imágenes, archivos css y js en su teléfono.

Yassin
fuente
2

Con WAMP :

1) debe hacer clic en el icono WAMP> Poner en línea (espere hasta que se reinicie).

2) Luego (si tiene WiFi en Iphone en la misma red), abra su IP en el navegador de iPhone

es decir, http://192.168.1.22 O http://164.92.124.42

Para encontrar sus IP locales:
a) haga clic en Inicio> Ejecutar> cmd y escriba ipconfig , luego verá allí.
O
b) haga clic en la flecha azul y "arrendar nueva ip".

PD Eso es todo. ahora puede acceder (abrir) localhost desde Android o iPhone

T.Todua
fuente
2

Para aquellos de ustedes que están usando la dirección IP correcta y TODAVÍA no pueden conectarse al servidor local, otra cosa para verificar es que usted o su compañero de trabajo no configuraron el dispositivo para usar un servidor proxy.

Tenía un dispositivo que no se conectaba, y resultó que el dispositivo estaba configurado para usar Charles Proxy, que por supuesto no se estaba ejecutando.

David
fuente
2

Encuentre la IPdirección de su sistema y en qué portestá ejecutando el sitio web.

Digamos que su dirección IP es 121.300.00.250y su puerto es 8080.

[Número de puerto: vea su navegador web mientras ejecuta la página, por ejemplo: localhost: 8080 / ... entonces el número de puerto es 8080]

Ahora en tu móvil ve a 121.300.00.250:8080/..y encontrarás tu sitio web.

IMPORTANTE: debe asegurarse de que su servidor (por ejemplo, Apache Tomcat) esté en condiciones de inicio

algo de TI
fuente
1

Eche un vistazo a esta respuesta , analiza el enrutamiento interno de HTTP a través de llamadas directas Objective-C a un servidor web incorporado / capa compatible con HTTP (supongamos que el código del servidor HTTP está dentro de la misma aplicación que desea mostrar el HTML dentro de una web widget).

Esto tiene la ventaja de ser un poco más seguro (y posiblemente más rápido) ya que ningún puerto debe estar expuesto.

Grande rico
fuente
1

Si sigue la ruta de acceder a la Configuración de red y obtener una dirección IP de Wi-Fi como xxx.xxx.x.xxx:9000 (: 9000 o el puerto que esté abierto), asegúrese de que su dispositivo móvil también esté en ese mismo Wi -Fi / señal de dirección IP. Pasé un día tratando de hacer que esto funcionara y no funcionó hasta que apagué mi teléfono de la red celular a la misma conexión Wi-Fi / dirección IP. Se abrió una vez que hice esta actualización.

timepicker_question
fuente
Apagar los datos móviles marcó la diferencia para mí. ¡Gracias!
Andy Stewart el
1

Hay una manera muy simple de lograr esto:

  1. Conecte su teléfono y computadora a la misma LAN.
  2. Window + R, luego escribe ipconfig, luego obtienes tu IP actual de tu PC, se ve así: 192.168.XX.XX
  3. Escriba esta ip con el puerto de su aplicación en el navegador web de su teléfono de esta manera: http: //192.168.XX.XX: 8080 , funciona

Nota:

Si eso no funcionó. Apague el software antivirus en su PC, si aún no funciona, intente apagar el firewall de Windows, porque el problema está relacionado con el firewall de la PC.

SkuraZZ
fuente
1

Pasos:

Supongo que ha iniciado el servidor web (apache tomcat en el puerto predeterminado: 8080).

En windows 10:

  1. Abra su antivirus, vaya a la sección de firewall, localice la sección del puerto y agregue un Puerto TCP / IP local: 8080 para permitir el acceso
  2. obtener la dirección IP de la máquina desde el símbolo del sistema. (Dirección IPv4)
  3. Inicie Chrome desde el iPhone y vaya a la dirección IP : dirección 8080.

Espero que esto ayude.

gajanan malvade
fuente
0

Desde mi iPhone quería navegar por un sitio web alojado en el servidor IIS en mi computadora portátil con Windows 8. Después de leer un poco, abrí el Firewall de Windows, seleccioné "Permitir una aplicación o función a través del firewall de Windows". Luego, desplácese hacia abajo y marque "World Wide Web Services (HTTP)" de la lista. Eso es todo, funcionó. Espero que ayude a alguien más también.

sumitir
fuente
0

En mi caso, primero conecté mi PC y mi móvil en la misma red, puedes hacer ping a tu móvil desde la PC para probar la conexión.

Ejecuté mi proyecto con GGTS (Groovy / Grails Tool Suite) localmente, luego accedo al sitio web desde el móvil usando la dirección IP de la PC y funciona muy bien.

PD. ejecutando desde local, daría una URL como ( http: // localhost: 8080 / projectname ), debe reemplazar localhost con la dirección IP de la PC si está intentando acceder a su sitio web local desde el móvil

tum
fuente
0

Otra forma rápida y sucia de hacer esto en una Mac es abrir xcode (si lo tiene instalado) y ejecutar safari en su simulador. Escribir localhostaquí también funcionará.

Julian B.
fuente