phpEnv 默认仅监听127.0.0.1,需修改Apache的httpd.conf中Listen为0.0.0.0:80或80,并放行防火墙,二者缺一不可。

phpEnv 默认只监听 127.0.0.1,不支持局域网访问,必须改配置 + 放行防火墙,缺一不可。
修改 phpEnv 的 Apache 监听地址
phpEnv 是基于 Apache 的集成环境,其默认配置会把 Web 服务锁死在本地回环。关键点不在 PHP 本身,而在 Apache 的 httpd.conf 文件里。
- 找到 phpEnv 安装目录下的
Apache/conf/httpd.conf(常见路径如C:\phpEnv\Apache\conf\httpd.conf) - 搜索
Listen,你会看到类似Listen 127.0.0.1:80或Listen 80;如果带127.0.0.1,必须改成Listen 0.0.0.0:80或直接保留Listen 80 - 再搜索
<directory>,定位到网站根目录(通常是 <code>htdocs)对应的块,确认里面包含Require all granted,而不是Require local - 保存后,**必须重启 phpEnv 的 Apache 服务**(通过托盘图标或控制面板),否则修改不生效
Windows 防火墙必须放行 80 端口(或你自定义的端口)
即使 Apache 配置全对,Windows 防火墙默认会拦截所有非本机发起的 80 端口请求,现象是“本机能打开,手机/同事电脑打不开”。
- 进「控制面板 → Windows Defender 防火墙 → 高级设置 → 入站规则 → 新建规则」
- 规则类型选「端口」→ 协议选 TCP → 特定本地端口填
80(或你改的比如8080) - 操作选「允许连接」→ 配置文件勾选「域」「专用」「公用」(局域网有时被识别为「公用」)
- 名称随便写,比如
phpEnv-HTTP,完成 - 临时验证可右键禁用防火墙,但切勿长期关闭
其他设备怎么访问?别输 localhost
局域网访问不是靠域名或 localhost,而是靠目标机器的真实内网 IP 地址。
立即学习“PHP免费学习笔记(深入)”;
- 在运行 phpEnv 的电脑上,打开命令提示符,执行
ipconfig,找「IPv4 地址」那一行,例如192.168.1.105 - 在手机、另一台电脑的浏览器里,直接输入
http://192.168.1.105(不加/localhost或/htdocs) - 如果 phpEnv 把项目放在子目录(如
htdocs/myapp),就访问http://192.168.1.105/myapp - 不要尝试改 hosts 或设虚拟主机——除非你真需要域名,否则纯 IP 访问最简单可靠
常见失败原因和快速排查点
“改了配置还是打不开”,大概率卡在这几个地方:
-
httpd.conf改的是错的文件(比如改了备份文件或旧版本路径) - Apache 没真正重启(托盘图标右键选「Restart Apache」,不是只点「Start」)
- 防火墙规则没应用到「公用」网络(尤其笔记本连 Wi-Fi 时经常掉坑里)
- 目标设备和访问设备不在同一局域网(比如一个连 2.4G Wi-Fi,一个连 5G,但路由器没开 AP 隔离)
- 杀毒软件自带防火墙(如 360、腾讯电脑管家)额外拦截,需单独放行
真正起作用的只有两件事:Apache 听所有 IP + 系统防火墙放行端口。其余都是干扰项。



















