我目前正在我的台式电脑上开发一个移动 PHP 项目localhost
(或者更准确地说,一个可通过 访问的本地托管网站http://azgoth/
),并希望检查该设计在我的手机的各种浏览器上的显示效果,但是,由于该项目实际上在我的计算机上而不是公共网络中,所以我无法这样做。
我的台式电脑和智能手机都通过同一个路由器连接到互联网,所以我想知道,是否有可能以某种方式使http://azgoth/
我的智能手机以类似于台式电脑访问的方式访问互联网,而不公开给所有人看?
操作系统:Windows XP SP3
服务:Apache HTTPD
路由器:D-Link DIR-300FTP 目录
答案1
调整防火墙设置之前/快捷方式:
警告: 如果不愿意检查路由器和操作系统的安全性,请不要将其永久化,因为这可能会向公众开放服务(Web 服务器和其他服务)。
不安全但快速的测试方法(可能有效或无效):1.禁用防火墙。2.使用手机连接到计算机的 IP。3.祈祷片刻。
如需更详细的说明和清单,请启用防火墙并继续阅读。
设置你的服务器软件(计算机)
请参阅此处查找配置文件apache-虚拟主机-xp.html,标题为“了解 Apache 服务器文件夹结构“。 您的服务器软件(阿帕奇)应该听(Apache 2.0 / 绑定) 位于连接到路由器的网络适配器上。
Apache 很可能已监听找到的所有适配器并且不需要配置,在这种情况下配置文件包含以下内容(Listen 0.0.0.0:80
也算在这里):
Listen 80
如果它包含这个:
Listen 127.0.0.1:80
将此行更改为第一行或添加您的计算机的 IP 地址Listen 192.168.0.100:80
。192.168.0.100
在那之后重启 Apache重新加载新设置并测试您是否可以使用手机连接到计算机的IP地址(本地IP)。
如果连接失败,继续路由设置:
您可能需要配置路由器以允许访问 + 配置计算机的防火墙以允许传入连接。
您应该检查路由器设置,有些无线路由器要求您通过有线方式进行配置。请查看路由器手册以了解相关信息(或者尝试连接到路由器的 IP)。
IP 地址设置(路由器):
[必需的]确保您的路由器为客户端提供 IP 地址(请参阅路由器手册中的 DHCP 设置)并且使用的 IP 地址在私有地址范围 (IPv4)。
[选修的]让您的计算机的(服务器) 通过将 IP 地址分配给您的计算机网络适配器 MAC 地址来将其设置为静态 IP 地址。这样可以保证您选择的 IP 地址可用并分配给您的计算机。
[备用]IP 地址也可以是静态的,但如果使用静态地址,则应确保可以手动设置手机的 IP 地址。
防火墙设置(路由器)
[必需的]首先,查找防火墙设置,然后从那里允许传入(端口 80)连接到您的计算机的 IP 地址。另一种方法是将您的计算机 IP 地址放入 DMZ(非军事区),这意味着所有端口和协议的所有过滤器和防火墙均被禁用。
[备用]可能还会有更多安全的方式仅允许你的手机的 MAC 地址更好的和/或 IP 地址更糟糕的是连接到您的计算机,这一切都取决于您的路由器制造商/型号。
防火墙设置(计算机)
[必需的]设置计算机的防火墙以允许传入连接到您的 http 服务器软件或全局到端口 80。根据操作系统和防火墙软件,再次有不同的方法来进行排序。
以下一些内容可能会有帮助:
如果您的 D-Link 路由器服务器 IP 地址DHCP可能是http://192.168.0.1为您打开配置实用程序。如果没有,但您的计算机仍从路由器获取 IP,请检查计算机的网络配置(IP 地址配置) 为了网关,这可能是你的路由器的 IP 地址如果在私人范围内?。
答案2
另一种选择是简单地让您的本地主机网络服务器对公共网络可见(暂时或永久,取决于您正在做什么)。
这可能是最简单的解决方案,假设您使用其中一种本地主机隧道服务(有几个),它的优点是您可以通过移动网络测试性能并让朋友/家人/同事/......也看看。
我编写了一个名为 PageKite 的工具来执行此操作(https://pagekite.net/) 并且还有一些其他的,例如 localtunnel 和 showoff。
答案3
没有必要把这件事搞得太复杂。你可以简单地按照这个网站上的建议去做,但不要连接到 Visual Studio 开发服务器,而是在地址中选择 localhost。这就是我所做的。
http://encosia.com/using-an-iphone-with-the-visual-studio-development-server/
它需要使用 fiddler 2,非常简单。当然,这只适用于开发,但它确实是一种快速简便的方法。
我知道该网站旨在在 iPhone 上进行测试,但它适用于任何手机。我使用 Galaxy S3 进行测试。
希望这可以帮助。