Accede a los servidores locales y las instancias de Chrome con la redirección de puertos

Kayce Basques
Kayce Basques
Meggin Kearney
Meggin Kearney
Sofia Emelianova
Sofia Emelianova

Puedes usar la redirección de puertos para lo siguiente:

  • Caso 1. Depura una pestaña abierta en otra instancia de Chrome.
  • Caso 2. Aloja un sitio en un servidor web de la máquina de desarrollo y, luego, accede al contenido desde un dispositivo Android a través de un cable USB.

En el caso 2, el reenvío de puertos funciona a través de un puerto TCP de escucha en tu dispositivo Android que se asigna a un puerto TCP en tu máquina de desarrollo. El tráfico entre los puertos viaja a través de la conexión USB entre tu dispositivo Android y la máquina de desarrollo, por lo que la conexión no depende de la configuración de tu red.

Además, si tu servidor web usa un dominio personalizado, puedes configurar tu dispositivo Android para acceder al contenido en ese dominio con la asignación de dominio personalizado.

Configura la redirección de puertos

Según tu caso, sigue los próximos pasos.

Caso 1: Configura la redirección de puertos a otra instancia de Chrome

  1. Ejecuta otra instancia de Chrome con el parámetro --remote-debugging-port=PORT, por ejemplo:

    macOS

    open -a "Google Chrome" --args --remote-debugging-port=PORT

    Windows

    start chrome --remote-debugging-port=PORT

    Linux

    google-chrome --remote-debugging-port=PORT
  2. En la instancia de Chrome que estás depurando, haz lo siguiente:

    1. Abre chrome://inspect/#devices.
    2. Asegúrate de que la opción Casilla de verificación. Descubrir objetivos de red esté marcada.
    3. Haz clic en Configurar junto a la casilla de verificación.
    4. En Target discovery settings, ingresa localhost:PORT, marca Casilla de verificación. Enable port forwarding y haz clic en Done.

      Es la ventana de configuración de la segmentación por descubrimiento.

    5. En Dispositivos, verás un nuevo destino remoto. Haz clic en Inspeccionar junto a la pestaña que deseas depurar.

      El vínculo de inspección junto a la pestaña en el destino remoto.

  3. Se abrirá una nueva ventana de Herramientas para desarrolladores en modo de dispositivo. En la barra de direcciones de la parte superior, puedes ingresar la dirección del sitio web que deseas depurar.

    Herramientas para desarrolladores en modo de dispositivo.

  4. Junto a la barra de direcciones, puedes activar o desactivar los métodos de entrada.

Caso 2: Configura la redirección de puertos a través de USB para tu dispositivo Android

  1. Configura la depuración remota entre tu máquina de desarrollo y tu dispositivo Android. Cuando termines, deberías ver tu dispositivo Android en la lista.

    Es el dispositivo Android que aparece en la lista.

  2. Asegúrate de que la opción Casilla de verificación. Descubrir dispositivos USB esté marcada.

  3. Haz clic en Redirección de puertos junto a la casilla de verificación.

  4. En Configuración de redirección de puertos, localhost:8080 está configurado de forma predeterminada. Marca Habilitar redirección de puertos.

    Es la configuración de redirección de puertos..

  5. Si quieres configurar otros puertos, sigue los próximos pasos. De lo contrario, omite los pasos y haz clic en Listo.

  6. En el campo de texto Puerto de la izquierda, ingresa el número de puerto desde el que quieres poder acceder al sitio en tu dispositivo Android. Por ejemplo, si quieres acceder al sitio desde localhost:5000, debes ingresar 5000.

  7. En el campo de texto Dirección IP y puerto que se encuentra a la derecha, ingresa la dirección IP o el nombre de host en el que se ejecuta tu sitio en el servidor web de tu máquina de desarrollo, seguido del número de puerto. Por ejemplo, si tu sitio se ejecuta en localhost:5000, debes ingresar localhost:5000.

  8. Haz clic en Listo.

Se configuró la redirección de puertos. También puedes ver un indicador de estado de la redirección de puertos en la parte superior y junto al nombre del dispositivo.

Es el estado de la redirección de puertos.

Para ver el contenido, abre Chrome en tu dispositivo Android y ve al puerto localhost que especificaste en el campo Puerto del dispositivo. Por ejemplo, si ingresaste 5000 en el campo, deberías ir a localhost:5000.

Asigna dominios locales personalizados

La asignación de dominios personalizados te permite ver contenido en un dispositivo Android desde un servidor web en tu máquina de desarrollo que usa un dominio personalizado.

Por ejemplo, supongamos que tu sitio usa una biblioteca JavaScript de terceros que solo funciona en el dominio incluido en la lista de entidades permitidas chrome.devtools. Por lo tanto, crearás una entrada en tu archivo hosts en tu máquina de desarrollo para asignar este dominio a localhost (es decir, 127.0.0.1 chrome.devtools). Después de configurar la asignación de dominios personalizados y el reenvío de puertos, podrás ver el sitio en tu dispositivo Android en la URL chrome.devtools.

Configura la redirección de puertos al servidor proxy

Para asignar un dominio personalizado, debes ejecutar un servidor proxy en tu máquina de desarrollo. Algunos ejemplos de servidores proxy son Charles, Squid y Fiddler.

Para configurar la redirección de puertos a un proxy, haz lo siguiente:

  1. Ejecuta el servidor proxy y anota el puerto que está usando.

  2. Configura el reenvío de puertos a tu dispositivo Android. En el campo dirección local, ingresa localhost: seguido del puerto en el que se ejecuta tu servidor proxy. Por ejemplo, si se ejecuta en el puerto 8000, debes ingresar localhost:8000. En el campo device port, ingresa el número en el que quieres que escuche tu dispositivo Android, como 3333.

Cómo configurar los parámetros de configuración del proxy en tu dispositivo

A continuación, debes configurar tu dispositivo Android para que se comunique con el servidor proxy.

  1. En tu dispositivo Android, ve a Configuración > Wi-Fi.
  2. Mantén presionado el nombre de la red a la que te conectaste.

  3. Presiona Modificar red.

  4. Presiona Opciones avanzadas. Se mostrará la configuración del proxy.

  5. Presiona el menú Proxy y selecciona Manual.

  6. En el campo Nombre de host del proxy, ingresa localhost.

  7. En el campo Puerto del proxy, ingresa el número de puerto que ingresaste para Puerto del dispositivo en la sección anterior.

  8. Presiona Guardar.

Con estos parámetros de configuración, tu dispositivo reenvía todas sus solicitudes al proxy en tu máquina de desarrollo. El proxy realiza solicitudes en nombre de tu dispositivo, por lo que las solicitudes a tu dominio local personalizado se resuelven correctamente.

Ahora puedes acceder a dominios personalizados en tu dispositivo Android de la misma manera que lo harías en la máquina de desarrollo.

Si tu servidor web se ejecuta en un puerto no estándar, recuerda especificar el puerto cuando solicites el contenido desde tu dispositivo Android. Por ejemplo, si tu servidor web usa el dominio personalizado chrome.devtools en el puerto 7331, cuando veas el sitio desde tu dispositivo Android, deberás usar la URL chrome.devtools:7331.