【发布时间】:2013-02-24 20:20:02
【问题描述】:
出于我自己的测试目的,我使用 CakePHP 构建了一个 Web 服务。
现在我使用真正的 Android 设备连接我的网络服务 (@localhost)。在第一次尝试时,我设法加载了我的测试页面。然后,我关闭了 Apache 服务器并对其进行测试以确保它不可用。测试完成后,我再次重新启动了 Apache。但是,从那时起,我的 Android 设备无法加载我的页面(网页不可用)。我的 Web 服务文件夹上有 Digest Authentication,第一次尝试时,它被正确执行了......
到目前为止我所做的是:
1. 使用我的真实 Android 设备(不是模拟器)连接我的本地主机 (http://192.168.xxx.xxx)。
2. 弹出摘要认证。
3. 输入用户名和密码。已成功连接。
4. 关闭 Apache 服务器。
5.尝试再次连接我的本地主机(当然,“网页不可用”)。
6. 重启 Apache 服务器。
7.尝试再次连接我的本地主机(重新加载永远不会再次工作......)
一开始我以为是缓存问题什么的。所以我已经清除了我的 Android 网络浏览器的所有缓存和任何表单数据,并再次尝试重新加载。但它再也不会重新加载。然后,我尝试从另一台 PC 连接并成功连接。仅从 Android 设备无法重新加载我的页面。
有什么办法可以解决这个问题吗?我需要使用我真正的 Android 设备进行调试,因为模拟器对于这项工作来说太慢了。我四处搜索,发现了几个类似的问题,但没有一个没有帮助,因为就我而言,我曾经成功连接到该服务。只是一次未能重新加载页面,并且永远不会再次加载它......
提前致谢。
* 编辑 * 我刚刚使用 Android 模拟器尝试了相同的序列并成功重新加载...我什至为我的真实设备尝试了另一个浏览器(海豚浏览器)但仍然无法加载我的页面...
【问题讨论】:
-
您确定您的设备仍然可以访问您的机器(重新连接时与您的机器在同一网络中)?如果是,当您重新启动 apache 时,您确定它正在侦听所有接口吗?
-
感谢您的回复,PCCoder!不幸的是,我的设备看起来无法连接到我的机器,但它们仍在同一个网络上。似乎 Apache 没问题,因为我的另一台机器即使在重新启动后也可以连接到 Web 服务。
-
localhost是127.0.0.1,而不是192.168.xxx.xxx。您的服务器需要设置为响应非localhost地址,192.168.xxx.xxx才能工作。 -
感谢您的提示。但是,192.168.xxx.xxx 是我机器的外部 IP 地址,这就是我连接到我的 Web 服务所需要的。正如我所提到的,我设法将它连接一次以进行第一次拍摄。我的网络服务仍然可以从另一台机器上使用。仅从真正的 Android 设备访问失败。
标签: android web-services apache localhost