我正在做一个移动网站,想用我的iPhone浏览器测试一下。我的Windows 7电脑和iPhone都在同一个无线网络上。如何从iPhone访问localhost ?现在我得到一个404错误。


当前回答

首先,你必须确认你也通过mac浏览器上的mac ip访问服务器api。 如果不是,请确保您的服务器允许这样做,而不仅仅是localhost(127.0.0.1),通过在0.0.0.0上运行您的服务器 去iphone上的safari,通过api你的服务器serve: ex http://0.0.0.0/st进行get请求。Safari自动重定向到服务器你的mac运行(在你的mac ip) 如果你想在你的iphone应用程序上发出请求,它应该用[你的mac/服务器ip]替换request 0.0.0.0

其他回答

如果你进入你的网络设置,并获得Wi-Fi IP地址,如xxx.xxx.x。xxx:9000(:9000或任何开放的端口),确保您的移动设备也在相同的Wi-Fi/信号IP地址上。我花了一天时间试着让它工作,直到我把手机的蜂窝网络切换到相同的Wi-Fi连接/IP地址,它才工作。我一更新就打开了。

看看这个答案,它讨论了通过直接Objective-C调用内部路由HTTP到支持HTTP的层/嵌入式web服务器(让我们假设HTTP服务器代码在同一个应用程序中,希望在web小部件中显示HTML)。

这样做的优点是稍微更安全(可能更快),因为不应该暴露任何端口。

如果你使用mac (OSX):

在mac上:

打开终端 运行“ifconfig” 找到ip地址为“192.xx.x.x”的行

如果你用地址测试你的网站:"localhost:8888/mywebsite"(这取决于你的MAMP配置)

在手机上:

打开浏览器(如Safari) 输入URL 192.xx . x.x.x:8888/mywebsite

注意:必须连接在同一网络(wifi)

你可以试试ngrok.io。工作原理与localtunnel相同。 下载适合您的操作系统的应用程序。试着这样跑:

linux:

./ngrok http 8000

8000是应用程序正在运行的端口号。

windows:

 ngrok.exe http 8000

找到你系统的IP地址和你运行网站的端口。

假设您的IP地址是121.300.00.250,端口是8080。

[端口号:在运行页面时看到您的web浏览器,例如:localhost:8080/…]那么端口号是8080]

现在在你的手机转到121.300.00.250:8080/..你会找到你的网站。

重要提示:您必须确保您的服务器(例如Apache Tomcat)处于启动状态