Sirviendo un sitio web local a través de bluetooth a un teléfono celular sin usar el Internet

Estoy tratando de ejecutar un equipo local a través de bluetooth en un teléfono móvil, ipad, y otros dispositivos inalámbricos.

Nos gustaría ser capaz de ejecutar un sitio web alojado localmente en este servidor sin que esté conectado a Internet, es posible ejecutar el sitio a través de bluetooth desde el servidor a los dispositivos inalámbricos.

El servidor no puede estar conectado a Internet, así que me gustaría saber si es posible ejecutar el sitio localmente, en un teléfono celular a través del navegador de teléfono móvil, sin que el servidor esté conectado a Internet.

Aprecio cualquier ayuda con esto.

Sí, por algunos medios como:

  • Utilizar bluetooth tethering hacia atrás – es decir, el teléfono piensa que la computadora es su fuente de conectividad de red. El equipo ejecuta no sólo el servidor web, sino también un servidor de nombres (o el teléfono tiene un archivo hosts) para que el nombre del sitio web se resuelva a la dirección IP del equipo en la red Bluetooth. Tenga en cuenta que el teléfono probablemente requerirá acceso de nivel de administrador o capacidad existente para ello.

  • Tratar el bluetooth más como una conexión en serie. Escriba un servicio que se ejecuta en el teléfono y acepta conexiones de red desde el navegador en el teléfono a través de la interfaz de red de bucle invertido. A continuación, envía la solicitud http a través del enlace serie bluetooth al PC, donde un servidor web como el programa los acepta y responde sobre el canal en serie. El servicio en el teléfono, a continuación, proporciona estos de vuelta al navegador a través de la interfaz de red loopback. Si está contenido con una URL como http: // localhost: 8080, esto no requeriría acceso administrativo al dispositivo, sino simplemente la capacidad de ejecutar un servicio de fondo que pueda escuchar en los sockets de red. Pero para deshacerse de la: 8080 y ejecutar en el puerto habitual implícito 80, al menos en Android que necesita acceso de root.

  • Envuelva el motor del navegador del teléfono en una aplicación que sustituye el acceso serial por el bluetooth en lugar de los sockets de red. Como alternativa, despliegue la idea de servicio por encima de esta forma dentro de una aplicación de navegador personalizada, de modo que en realidad no tenga que ejecutar un paquete de fondo, sino sólo un subproceso de servicio de fondo dentro de la aplicación que el usuario esté usando activamente.

  • Comprar un enrutador wifi en casa y no conectar su puerto WAN a nada. Obtenga uno con suficiente memoria para instalar un router-linux distro en e incluso puede ser capaz de alojar el sitio web en esa caja y dejar la PC fuera de ella. Sí, esto no es una solución bluetooth, simplemente tirándolo hacia fuera allí para la simplicidad si hay una manera que podría ser aceptable.

Utilice un Raspberry Pi con el sistema operativo Raspbian Linux instalado. Configure su servidor web favorito en el Pi (Nginx). Configure el Pi como un punto de acceso WiFi que ejecute hostapd de acuerdo con esto: https://learn.adafruit.com/setting-up-a-raspberry-pi-as-a-wifi-access-point/install-software

Esto le dará un muy agradable, barato, de poca potencia pequeño servidor web que transmite su propio SSID WiFi para que pueda conectar todos sus dispositivos a.

He utilizado esto para lograr lo que buscas.

Si está desarrollando una aplicación web a la que accede a través de localhost (es decir, angular, expresa, etc.) y desea acceder a ella en su dispositivo móvil, una opción es invertir la conexión de su dispositivo para que su tableta / teléfono acceda a Internet a través de Su computadora a través de Bluetooth PAN.

Una vez que el dispositivo esté conectado, necesitará encontrar la dirección IP de su computadora en la red alojada (bluetooth) . Para encontrar esto, abra la aplicación de terminal y escriba ifconfig y busque la dirección inet en la configuración bridge100 , por ejemplo, en la cuarta fila de esta entrada ifconfig :

 bridge100: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=3<RXCSUM,TXCSUM> ether f6:0f:24:22:ea:64 inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255 inet6 fe80::f04f:2f4f:ef22:ae64%bridge100 prefixlen 64 scopeid 0x10 Configuration: id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0 maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200 root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0 ipfilter disabled flags 0x2 member: en6 flags=3<LEARNING,DISCOVER> ifmaxaddr 0 port 15 priority 0 path cost 0 nd6 options=201<PERFORMNUD,DAD> media: autoselect status: active 

Una vez que tenga la dirección IP de su computadora en el bluetooth netowrk ( 192.168.2.1 en este caso), abra el navegador de su dispositivo móvil y cargue http://192.168.2.1:1234/ donde `1234 se sustituye por el puerto que su servidor Está escuchando (es decir 4200 para Angular, etc).

Nota especial para AngularJS: de forma predeterminada, el comando ng serve sólo escucha "localhost: 4200", que no es accesible a otros dispositivos de la red. Para Angular, necesitará iniciar su servidor con el host especificado de la siguiente manera: ng serve -host 0.0.0.0

  • Cómo compilar ffmpeg-2.2.2 en windows con cygwin y android ndk r9c
  • Compilación de la biblioteca de Android-OpenCV con Cygwin
  • ¿Es posible cambiar dónde se guardan los dispositivos virtuales Android?
  • Cuenta de método jar / dex Android en ventanas
  • Compilación de OpenCV en Android NDK
  • Cambiar el tamaño de una ventana Windroy
  • Ventana de superposición del sistema causa problemas de tacto para el teclado y el botón Atrás
  • Proguard error: Esperando la clase seperator de ruta - no estoy seguro donde necesito poner un camino entre comillas
  • Muestra de detección de caras de opencv
  • No se puede iniciar Eclipse - Java se inició pero devolvió el código de salida = 13
  • Android Studio sigue bloqueando
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.