You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在同网络iPhone访问Mac本地PHP服务器网站?

如何让同网络的iPhone访问Mac上运行在8000端口的PHP站点?

看起来你已经差一步就解决问题了!咱们来一步步排查并搞定这个问题:

核心问题:PHP服务器的绑定地址限制

默认情况下,当你用 php -S localhost:8000 启动服务器时,它只会绑定本地回环地址(127.0.0.1),这意味着只有Mac本机能访问,同网络的其他设备(比如你的iPhone)根本连不上这个端口。这就是你本地访问正常,但iPhone访问失败的关键原因!

解决步骤

1. 重新启动PHP服务器,绑定到所有网络接口

停止当前运行的PHP服务器(按 Ctrl + C),然后在你的项目根目录下执行以下命令:

php -S 0.0.0.0:8000

这个命令会让服务器监听Mac上所有可用的网络接口,包括局域网IP。你也可以直接绑定到你的Mac局域网IP,效果一样:

php -S 192.168.1.122:8000

2. 验证Mac本地的局域网IP访问

先在Mac上打开浏览器,访问 http://192.168.1.122:8000/index.php,确认页面能正常显示。这一步是为了排除服务器本身的配置问题。

3. 在iPhone上测试访问

确保iPhone和Mac连接到同一个WiFi网络,然后打开iPhone的浏览器,输入以下地址之一:

  • http://192.168.1.122:8000/index.php(直接用IP地址,最稳定)
  • http://<你的Mac名称>.local:8000/index.php(替换<你的Mac名称>为Mac的实际名称,可在「系统设置」→「通用」→「关于本机」中查看)

注意:必须输入完整的 http:// 前缀,部分浏览器可能不会自动补全,导致访问失败。

4. 排查防火墙(如果上述步骤仍无效)

如果还是访问不了,检查Mac的防火墙是否阻止了8000端口的外部连接:

  • 打开「系统设置」→「网络」→「防火墙」(不同macOS版本可能在「安全性与隐私」里)
  • 临时关闭防火墙测试,如果能访问了,就添加一条允许PHP服务器进程通过防火墙的规则。

额外说明

你提到访问 http://<name>.local 能显示“It works!”,那是因为这个地址默认指向Mac上的Apache服务器(默认80端口),和你自己启动的PHP 8000端口服务器是两个不同的服务,所以之前的访问正常不代表8000端口的服务能被外部访问。

内容的提问来源于stack exchange,提问作者Aej11a

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 06:18:54