phpstudy局域网或外部无法访问的最常见原因是系统防火墙拦截web服务端口;需先确认apache/nginx已启动且localhost可访问,再通过windows防火墙高级设置放行对应tcp端口(如80/8080)及phpstudy进程,并验证监听地址为0.0.0.0。

PHPStudy站点在局域网或外部无法访问,最常见的原因就是系统防火墙拦截了Web服务端口。不是PHP没跑起来,也不是代码写错了,而是请求根本没被允许进来——防火墙像一堵默认关闭的门,得手动开一条路。
确认Web服务已正常运行
放行防火墙前,先确保底层服务确实就绪:
- 打开phpStudy面板,检查Apache(或Nginx)和MySQL状态是否为“已启动”;
- 在浏览器中访问 http://localhost 或 http://127.0.0.1,能打开首页说明服务本身正常;
- 若连本地都打不开,先排查端口占用(如IIS、Skype、迅雷)、VC++运行库缺失或配置文件语法错误。
Windows防火墙放行HTTP端口
Windows Defender防火墙默认阻止外部对80/8080等端口的访问,需显式授权:
- 进入“控制面板 → 系统和安全 → Windows Defender 防火墙 → 高级设置”;
- 点击“入站规则” → 右侧“新建规则” → 选择“端口” → 下一步;
- 选“TCP”,输入具体端口(如80或你改过的8080)→ 下一步;
- 选“允许连接” → 下一步;
- 勾选“域”“专用”“公用”(局域网访问至少勾“专用”)→ 下一步并命名(如“PHPStudy-HTTP”)→ 完成。
额外放行phpStudy进程(可选但推荐)
某些安全策略会按程序而非端口拦截,尤其使用非标准端口时:
- 回到“高级设置”,选“入站规则” → “新建规则” → 选择“程序”;
- 浏览到phpStudy安装目录下的 phpstudy_pro.exe 或 apache\bin\httpd.exe(依你用的服务而定);
- 后续步骤同上,允许连接并应用到所有网络类型。
验证是否生效
完成设置后,不要直接跳去测试,按顺序验证:
- 用另一台局域网设备(手机或电脑),浏览器访问 http://你的电脑IP/test.php(例如 http://192.168.1.105/test.php);
- 若看到输出内容,说明放行成功;
- 若仍失败,检查该设备能否ping通你的IP,排除网络隔离;再确认phpStudy监听地址是否为 0.0.0.0:80(而非仅127.0.0.1);
- 临时关闭防火墙测试一次,若此时能访问,就100%确认是防火墙规则问题。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











