休闲

phpstudy网站打不开

时间:2010-12-5 17:23:32  作者:综合   来源:百科  查看:  评论:0
内容摘要:phpStudy面板上的网站突然打不开,十有八九不是代码问题,是端口被占了。 我前天晚上就撞上这破事。本地项目跑得好好的,浏览器刷新一下,直接“无法访问此网站”。第一反应是Apache挂了,打开php

phpStudy面板上的网站网站突然打不开,十有八九不是网站代码问题,是网站端口被占了。

我前天晚上就撞上这破事。网站本地项目跑得好好的网站,浏览器刷新一下,网站直接“无法访问此网站”。网站第一反应是网站Apache挂了,打开phpStudy一看,网站状态灯绿的网站,Apache进程也活着。网站这就邪门了。网站

先别急着重装,网站那是网站最蠢的办法。你先看看端口。网站Apache默认监听80,但Windows上有个要命的习惯——IIS或者SQL Server Reporting Services会偷偷把80端口抢走。用命令行敲一句netstat -ano | findstr :80,如果看到LISTENING后面跟着的PID不是Apache的,那就是被抢了。我那次就是,PID是4,查一下发现是System进程,实际上是HTTP.sys内核驱动占着。直接去服务里把“World Wide Web Publishing Service”停掉,顺手把“SQL Server Reporting Services”也禁用,再重启Apache,好了。

要是端口没被占,那就换个思路。看看hosts文件。phpStudy自带的域名解析偶尔会抽风,你本地用phpstudy.test这种自定义域名访问的话,去C:\Windows\System32\drivers\etc\hosts里查一下,127.0.0.1 phpstudy.test这行还在不在。有时候装个别的软件,或者手滑清理垃圾,会把hosts重置。没有就手动加一行,保存时注意别加.txt后缀。

还有一种更隐蔽的情况——phpStudy的版本太老,跟新版Windows不兼容。我有个朋友用Win11,装了phpStudy 8.0老版本,Apache启动显示成功,但就是打不开页面。后来发现是Apache的httpd.exe根本没跑起来,只是phpStudy界面显示绿色。你打开任务管理器,切到“详细信息”标签,搜一下httpd,如果有两个以上进程在跑,说明正常;要是只有一个甚至没有,那就是假启动。解决方法是去phpStudy的Apache目录下的conf文件夹,打开httpd.conf,检查一下Listen 80和ServerName localhost:80这两行,有时配置文件的换行符被改坏了,Apache会静默退出。

再往后排查,就得看日志了。phpStudy面板上有“日志”按钮,点进去看Apache的error.log。别嫌日志长,直接拉到最后几行。最常见的报错是AH00428: Parent: child process exited with status 255,这玩意多半是权限不够。右键phpStudy图标,选“以管理员身份运行”,问题直接消失。别觉得这步多余,Windows的UAC会把Apache的写权限挡得死死的,尤其是你装phpStudy在C盘Program Files目录下时。

最后说个傻但有效的招。如果你改了各种配置都没用,试试把phpStudy整个退出,然后去安装目录里找到phpstudy_pro文件夹,把com这个子文件夹删掉。这是它的配置缓存目录,删了之后重新启动phpStudy,它会重新生成默认配置。我遇到过两次,一次是MySQL的端口被改乱了,另一次是Apache的模块加载列表损坏,删这个文件夹全解决了。注意删之前备份一下你自己的站点配置,别误删了www目录下你的项目文件。

反正记住一个核心思路:phpStudy打不开网站,90%是环境层面的问题,不是你的代码问题。别上来就改代码,先从端口、进程、权限、缓存这四个方向下手。实在不行,卸载重装也就十分钟的事,但重装前记得备份数据库和站点文件,别问我怎么知道的。

最近更新
热门排行
copyright © 2026 powered by 力不从心网   sitemap