我正试图通过手机,ipad和其他无线设备上的蓝牙运行本地计算机。
我们希望能够在没有连接到互联网的情况下运行本地托管在此服务器上的网站,是否可以通过蓝牙从服务器到无线设备运行该网站。
服务器可能没有连接到互联网,所以我想知道是否可以通过手机浏览器在手机上本地运行网站,而无需将服务器连接到互联网。
我很感激任何帮助。
我正试图通过手机,ipad和其他无线设备上的蓝牙运行本地计算机。
我们希望能够在没有连接到互联网的情况下运行本地托管在此服务器上的网站,是否可以通过蓝牙从服务器到无线设备运行该网站。
服务器可能没有连接到互联网,所以我想知道是否可以通过手机浏览器在手机上本地运行网站,而无需将服务器连接到互联网。
我很感激任何帮助。
是的,通过某种方式,例如:
向后使用蓝牙网络共享 - 即手机认为计算机是网络连接的来源。计算机不仅运行Web服务器,还运行名称服务器(或手机具有主机文件),以便网站名称解析为蓝牙网络上计算机的IP地址。请注意,手机可能需要管理员级别访问权限或现有功能。
将蓝牙更像是串行连接。编写一个在手机上运行的服务,并通过环回网络接口接受来自手机浏览器的网络连接。然后,它通过蓝牙串行链路将http请求发送到PC,其中类似于Web服务器的程序接受它们并通过类似串行的通道进行响应。然后,电话上的服务通过环回网络接口将这些服务提供给浏览器。如果您满足于诸如此类的网址 HTTP://本地主机:8080 这不需要对设备进行管理访问,而只需要运行可以侦听网络套接字的后台服务。但要摆脱:8080并在隐含的通常端口80上运行,至少在Android上你需要root访问权限。
将手机的浏览器引擎包裹在一个应用程序中,该应用程序用蓝牙代替网络套接字替代类似串行的访问。或者,在自定义浏览器应用程序内部以这种方式部署服务理念,这样您实际上不必运行后台程序包,而只需要在用户正在使用的应用程序中运行后台服务线程。
购买家庭wifi路由器,不要将它的WAN端口连接到任何东西。获得一个有足够内存来安装路由器 - Linux发行版,你甚至可以在该框上托管该网站,并让PC脱离它。是的,这不是一个蓝牙解决方案,如果有一种可以接受的方式,只是为了简单而折腾它。
是的,通过某种方式,例如:
向后使用蓝牙网络共享 - 即手机认为计算机是网络连接的来源。计算机不仅运行Web服务器,还运行名称服务器(或手机具有主机文件),以便网站名称解析为蓝牙网络上计算机的IP地址。请注意,手机可能需要管理员级别访问权限或现有功能。
将蓝牙更像是串行连接。编写一个在手机上运行的服务,并通过环回网络接口接受来自手机浏览器的网络连接。然后,它通过蓝牙串行链路将http请求发送到PC,其中类似于Web服务器的程序接受它们并通过类似串行的通道进行响应。然后,电话上的服务通过环回网络接口将这些服务提供给浏览器。如果您满足于诸如此类的网址 HTTP://本地主机:8080 这不需要对设备进行管理访问,而只需要运行可以侦听网络套接字的后台服务。但要摆脱:8080并在隐含的通常端口80上运行,至少在Android上你需要root访问权限。
将手机的浏览器引擎包裹在一个应用程序中,该应用程序用蓝牙代替网络套接字替代类似串行的访问。或者,在自定义浏览器应用程序内部以这种方式部署服务理念,这样您实际上不必运行后台程序包,而只需要在用户正在使用的应用程序中运行后台服务线程。
购买家庭wifi路由器,不要将它的WAN端口连接到任何东西。获得一个有足够内存来安装路由器 - Linux发行版,你甚至可以在该框上托管该网站,并让PC脱离它。是的,这不是一个蓝牙解决方案,如果有一种可以接受的方式,只是为了简单而折腾它。
使用安装了Raspbian Linux OS的Raspberry Pi。在Pi(Nginx)上配置您喜欢的Web服务器。根据以下内容将Pi配置为运行hostapd的WiFi接入点: https://learn.adafruit.com/setting-up-a-raspberry-pi-as-a-wifi-access-point/install-software
这将为您提供一个非常好,便宜,低功耗的小型Web服务器,它可以为您连接所有设备来广播自己的WiFi SSID。
我用它来实现你的目标。
如果您正在开发通过localhost访问的Web应用程序(即angular,express等)并想要在您的mobil设备上访问它,一个选项是 反向系绳 您的设备,以便您的平板电脑/手机通过蓝牙PAN通过您的计算机访问互联网。
连接设备后,您需要在设备上找到计算机的IP地址 托管(蓝牙)网络。要查找,请打开终端应用程序,然后键入 ifconfig
,并搜索 inet
地址在 bridge100
配置,例如在第四排 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
在蓝牙网络上获得计算机的IP地址后(192.168.2.1
在这种情况下),打开您的移动设备的浏览器并加载 http://192.168.2.1:1234/
其中`1234被服务器正在侦听的端口替换(即Angular的4200等)。
AngularJS的特别说明:默认情况下, ng serve
命令仅侦听“localhost:4200”,这是网络上其他设备无法访问的。对于Angular,您需要使用如下指定的主机启动服务器: ng serve -host 0.0.0.0