我正在开发一个移动网站,并想使用我的 iPhone 浏览器对其进行测试。我的 Windows 7 机器和 iPhone 在同一个无线网络上。如何从 iPhone 访问 localhost?现在我收到 404 错误。
从 iPhone 访问 localhost 将简单地进行环回/尝试连接到自身(如果它支持?)。
您需要做的是找到您的桌面计算机的 IP(例如,如果是 Windows,请转到 Command Prompt
并键入 ipconfig
或转到 Network and Sharing Centre
并查找 connection status
。
获得 IP 后,只需从浏览器访问该 IP,例如 http://192.168.0.102
。
如果您正在运行防火墙,您可能需要在防火墙的入站安全性中打开端口 80(或您的网站正在运行的任何端口)。
注意:如果您想要在 iPhone 的浏览器中调试应用程序,请不要忘记应用程序的端口,例如:http://192.168.0.102:3000。在这个例子中,3000 是 ReactJS 使用的默认端口。
如果您使用的是 Mac,请转到系统偏好设置 > 网络并使用您的 IP 地址而不是 localhost。您也可以使用端口号。就我而言,我有一个在端口 1448 上运行的服务器,我可以使用 iPhone 预览 192.168.1.241:1448。
https://i.stack.imgur.com/LPuxd.png
尝试这个:
按 Windows + R 打开 cmd 运行 ipconfig(旧) ifconfig(新) 检查您的无线网卡 IP 转到 iPhone 并通过浏览器导航到“http://xxx.xxx.xxx.xxx/”。 (xxx.xxx.xxx.xxx 是你的 IP)
注意:您必须在防火墙设置上设置权限(如果有)。
你可以试试ngrok.io。工作原理与本地隧道相同。
为您的操作系统下载应用程序。并尝试像这样运行:
对于 Linux:
./ngrok http 8000
8000 是您的应用程序正在运行的端口号。
对于窗户:
ngrok.exe http 8000
如果您使用的是 Mac -
通过 USB 将 iPhone 连接到 Mac。转到网络实用程序(cmd+空格并键入“网络实用程序”)转到“信息”选项卡单击“Wi-Fi”下拉菜单,然后选择“iPhone USB”,如图所示。
https://i.stack.imgur.com/cD2K6.png
您会找到类似“xxx.xxx.xx.xx”或类似的 IP 地址。在 iPhone 上打开 Safari 浏览器并输入 IP_address:port_number 示例:169.254.72.86:3000
[注意:如果 IP 地址字段为空白,请确保您的 iPhone 已通过 USB 连接,退出 Network Utility,再次打开并检查 IP 地址。]
如果您使用 MAMP,请在您的 iPhone Safari 浏览器中输入您的 IP 地址(例如 192.0.0.63),然后输入端口号 8888(例如 192.0.0.63:8888),您将能够看到您的本地iPhone 中的网站。
如果您使用的是 WAMP 服务器,请再次在 iPhone Safari 浏览器中输入 IP 地址(例如 192.0.0.63),仅此而已。但不要忘记从您的 WAMP 服务器的 httpd.conf 文件中删除 deny from all
。如果您查找第 allow from 127.0.0.1
行,在其上方或下方您将看到 deny from all
;只需删除此行并重新启动您的 WAMP 服务器即可完成这项工作。
如果您宁愿键入主机名而不是 IP 地址
第一个选项(快速方式):
您应该能够在 iPhone 上导航到 http://my-macbook-pro.local/mywebsite
。请参阅https://stackoverflow.com/a/9304094/470749
这种方法往往会奏效,因为“.local”域是一个特殊的保留字。
第二种选择:
请参阅http://xip.io/,这是一项免费服务,非常方便。无需配置。
然后,当您浏览到 http://mysite.app.192.168.1.130.xip.io(使用您的服务器上的浏览器或在您 LAN 上的任何设备上)时,它将显示托管在 192.168.1.130
的页面。
如果您在存在于该 IP 的机器上运行 Homestead,浏览到 http://mysite.app.192.168.1.130.xip.io:44300(使用 URL 中的端口)会以某种方式显示托管在 192.168.10.10
的 Homestead Vagrant 虚拟机上的页面。相当了不起。
第三个选项(它不依赖于服务并且灵活但更复杂,并且仅在您有一个带有 DD-WRT 的路由器时才有效):
如果您有一台本地服务器托管多个不同的站点,您希望通过不同的主机名(通过 iPhone)访问这些站点,您可以这样做。
在您的操作系统中,将您的计算机名称更改为简短、有意义且易于记忆的名称,例如“RYANDESK”。在您的 DD-WRT 路由器设置中:在 Services > Services > Static Leases 中,将服务器的 MAC 地址设置为指向特定的 IP 地址,例如 192.168.1.108。将其主机名设置为与您之前命名计算机的相同。 “客户租用时间”可以是 1440 分钟。请务必按保存并在每次更改时应用设置。 (“保存”似乎不会自动应用设置。)如果您收到错误,可能是因为 DD-WRT 的 GUI 设计具有误导性,并且您不必要地为静态租约按下了“添加”。在 DHCP 服务器 > 用户域中,选择“LAN & WAN”。对于“LAN 域”,将其设置为一些短字符串,例如不带任何标点符号的姓名首字母(例如“xyz”)。可能避免使用“本地”一词,因为可能存在冲突。不要使用真实世界的域,例如“com”、“org”、“net”等。在“服务”>“服务”>“DNSMasq”中,启用 DNSMasq 和“本地 DNS”,并将“附加 DNSMasq 选项”配置为: address=/project1.xyz/project2.xyz/192.168.1.108 (其中 xyz 是您在前面步骤中选择的任何内容,IP 指向特定机器,project1 和 project2 是您想要指向每个项目的任何主机名(例如不同的 Nginx 配置)。确保您的 HOSTS 文件没有任何与我们所做的冲突的条目。如果您不知道 HOSTS 文件是什么,您可能没问题。刷新您的 DNS 缓存并释放并更新您的本地IP。在iPhone上切换进入和退出飞行模式以刷新那里的DNS缓存。现在您可以在iPhone(或桌面浏览器)中浏览到http://ryandesk.xyz,它会解决到你的本地服务器。所以希望你已经设置了你的 Nginx 或 Apache 或任何正在监听该主机名的东西。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/
对于 Mac 用户,打开 Network Utility(您可以通过键入 cmd + space 来找到它,这将打开 Spotlight,然后在 Spotlight 中开始键入 Network Utility)。选择网络实用程序,当它打开时,您的 IP 地址将在标签 IP 地址旁边找到。所以基本上使用IP,您可以进入本地mac上的任何开放端口,例如,如果您的网站在localhost:3000本地运行并且您的IP地址是154.31.92.0,那么您可以通过手机输入154.31来获取网站。 92.0:3000 进入浏览器。
PS-仅当手机和计算机在同一网络上时才有效
来自 iphone 的 WebpackDevServer 本地主机
如果您使用的是在节点上运行的应用程序。你可以使用 webpack 作为构建工具并使用他们内置的 devserver
您可以使用 webpackdevserver 从 localhost 服务器启动应用程序,然后传入您选择的 localhost 地址和端口。
webpack-dev-server --host 192.168.0.89 --port 3000
然后从你的 iPhone 你可以使用它访问它
注意 :: 您的笔记本电脑和 iPhone 应该在同一个网络上,并且您应该使用您的本地主机 IP 地址。对于 Mac 如何查找 IP 地址,您可以参考 Get local IP address in node.js
老问题。对我有用的新的简单答案。
通过 USB 将 iPhone 连接到计算机。
打开系统偏好设置 > 共享。
在左侧选项卡中选择 Internet 共享。这应该会在右侧显示您的 Internet 共享控件。
如果 Internet 共享旁边的复选框已启用,请取消选中它。
在 Internet 共享选项的右侧,选中 iPhone USB。
通过选中复选框启用 Internet 共享。可能会有一个弹出窗口要求您确认此操作。
找到顶部附近的消息,“本地网络上的计算机可以访问您的计算机:xxxx.local。记下 xxxx 所说的内容 - 这是您计算机的名称。您将在地址栏中输入它,所以我建议把它编辑成一个简短的词。
您现在应该能够从 xxxx.local:yyyy 访问您的 localhost 服务器,其中 xxxx 是您上一步的名称,yyyy 是您服务器的端口号。
如果您使用的是 mac (OSX):
在你的 Mac 上:
打开终端运行“ifconfig”找到ip地址为“192.xx.xx”的行
如果您使用以下地址测试您的网站:“localhost:8888/mywebsite”(这取决于您的 MAMP 配置)
在您的手机上:
打开浏览器(例如 Safari) 输入 URL 192.xxx.xx:8888/mywebsite
注意:您必须连接到同一网络(wifi)
您可以使用计算机的 ip 代替 http://localhost。
但它可能无法访问。您必须编辑服务器软件的 httpd.conf(或等效配置文件)。我现在没有安装 php,但您可以使用关键字搜索:“Allow from or /Directory”
注意:运行 XAMPP 的 PC 的 IP 应该是静态 IP(不是 DHCP 分配的),否则每次重启 PC 时都必须手动检查。
我想完成与原始请求相同的事情,并在这里寻找答案,并关闭了所有防火墙和病毒防护均无济于事。
然后,我在 microsoft 文档中找到了以下关于 IIS express 的声明:“IIS express 不向另一台计算机上的浏览器提供请求,使其在企业环境中更容易获得批准”。
底线 - 您必须安装 IIS(而不是提供的 IIS express)才能让您的项目在您的计算机之外看到。
来源:http://msdn.microsoft.com/en-us/library/58wxa9w5.aspx
希望这对其他正在疯狂关闭计算机上所有安全功能的人有所帮助。
本地服务器机器:Linux
接入机器:iPad 13.5.1
了解到本地服务器的主机IP需要设置为0.0.0.0,其他机器才能访问。要检查,请运行 sudo netstat -anp
并查找您的本地服务器端口。我发现它在 127.0.0.1 或 localhost 上运行,因此其他机器无法访问它。我将应用配置更改为在主机 IP 0.0.0.0 上运行。然后我使用 <internetIP>:<port>
访问本地服务器,它工作
如果您正在处理 php 项目,则可以更改基本 href:
<base href="<?php echo str_replace("localhost","192.x.x.x",HTTPS_SERVER);?>">
localhost 或 127.0.0.1:取决于您的设置
192.xxx : 你的本地 IP 地址
HTTPS_SERVER:以前的基本 href
这样做对于在手机上加载图像、css 和 js 文件至关重要。
使用 WAMP:
1)您应该点击 WAMP 图标>上线(等到重新启动)。
2)然后(如果您是同一网络上的Iphone上的WiFi),在iPhone浏览器中打开您的IP
即http://192.168.1.22
或 http://164.92.124.42
要查找您的本地 IP:
a) 点击 Start>Run>cmd 并输入 ipconfig ,然后您会看到那里。
或
b) 点击蓝色的 arrow 和“租用新 ip”。
ps就是这样。现在您可以从 Android 或 iPhone 访问(打开)localhost
对于那些使用正确 IP 地址但仍无法连接到本地服务器的人,要检查的另一件事是您或您的同事没有将设备配置为使用代理服务器。
我有一台无法连接的设备,结果发现该设备被配置为使用 Charles Proxy,当然它没有运行。
找到您系统的 IP
地址以及您在哪个 port
上运行该网站。
假设您的 IP 地址是 121.300.00.250
,端口是 8080
。
[端口号:在运行页面时查看您的 Web 浏览器,例如:localhost:8080/... 那么端口号是 8080]
现在在您的手机中转到 121.300.00.250:8080/..
,您会找到您的网站。
重要提示:您必须确保您的服务器(例如 Apache Tomcat)处于启动状态
看看这个 answer,它讨论了通过直接 Objective-C 调用到支持 HTTP 的层/嵌入式 Web 服务器的内部路由 HTTP(假设 HTTP 服务器代码位于希望在其中显示 HTML 的同一应用程序中)一个网络小部件)。
这具有稍微更安全(并且可能更快)的优点,因为不应暴露任何端口。
如果您进入网络设置并获取 Wi-Fi IP 地址,例如 xxx.xxx.x.xxx:9000(:9000 或任何打开的端口),请确保您的移动设备也在同一个 Wi-Fi 上-Fi/信号 IP 地址。我花了一天时间试图让它工作,直到我将手机从蜂窝网络切换到相同的 Wi-Fi 连接/IP 地址,它才起作用。在我进行此更新后立即打开。
有一种非常简单的方法可以实现这一点:
将手机和电脑连接到同一个局域网。 Window + R,然后输入 ipconfig,然后你会得到你电脑的当前 ip,它看起来像这样:192.168.XX.XX 在你的手机网络浏览器中用你的应用程序端口输入这个 ip,如下所示:http://192.168.XX .XX:8080,它有效
笔记:
如果那不起作用。关闭电脑中的杀毒软件,如果还是不行,请尝试关闭windows防火墙,因为问题与电脑防火墙有关。
脚步:
我假设您已经启动了 Web 服务器(默认端口:8080 上的 apache tomcat)。
在 Windows 10 上:
打开您的防病毒软件,转到防火墙部分,找到端口部分并添加一个本地 TCP/IP 端口:8080 以允许访问从命令提示符获取机器 IP 地址。 (IPv4 地址)从 iPhone 启动 chrome 并转到 ip 地址:8080 地址。
希望这可以帮助。
首先,您必须确认您还通过 mac 浏览器上的 mac ip 访问服务器 api。如果没有,请确保您的服务器允许这样做,而不仅仅是 localhost (127.0.0.1),方法是在 0.0.0.0 上运行您的服务器转到 iphone 上的 safari 并通过您的服务器服务的 api 发出获取请求:例如 http://0.0。 0.0/st。如果您想在您的 iphone 应用程序上发出请求,Safari 会自动重定向到您的 mac 运行服务器(在您的 mac ip 上)。它应该由 [your mac/server ip] repalce requet 0.0.0.0
我想从我的 iphone 浏览我的 Windows 8 笔记本电脑上托管在 IIS 服务器上的网站。经过一番阅读,我打开了 Windows 防火墙,选择了“允许应用程序或功能通过 Windows 防火墙”。然后向下滚动并从列表中选中“万维网服务 (HTTP)”。就是这样,它奏效了。希望它也对其他人有所帮助。
在我的情况下,首先我将我的电脑和手机连接到同一网络上,您可以从电脑 ping 手机以测试连接。
我在本地使用 GGTS(Groovy/Grails Tool Suite)运行我的项目,然后使用 PC IP 地址从移动设备访问网站,它运行良好。
PS。从本地运行它会给出类似 (http://localhost:8080/projectname) 的 url,如果您尝试从移动设备访问本地网站,您应该将 localhost 替换为 PC IP 地址
如果您使用的是 Mac,请确保编辑您的 /etc/hosts
文件。按照上述说明查找 IP 地址,并将以下行添加到该文件中
172.x.xx.x.x outer
之后,上述步骤奏效:在我的 iphone 浏览器中导航到右侧页面,访问 http://172.x.xx.x.x:port http://www.imore.com/how-edit-your-macs-hosts-file-and-why-you-would-want
在 Mac 上执行此操作的另一种快速而肮脏的方法是打开 xcode(如果您安装了它)并在您的模拟器上运行 safari。在此处键入 localhost
也可以。
不定期副业成功案例分享
http://xxx.xxx.xxx.xxx/wordpress
。