php网站打不开通常因php-fpm未运行、nginx转发配置错误或根目录权限/路径问题;需依次检查php-fpm服务状态与日志、nginx fastcgi_pass与root配置是否匹配、网站目录属主是否为www且权限合理。
宝塔面板里 PHP 网站打不开,大概率不是 PHP 本身挂了,而是 PHP-FPM 进程没起来、nginx 配置没生效、或 网站根目录权限/路径 错了——先别急着重装,按顺序查这三块基本能定位 90% 的问题。
PHP-FPM 服务是否在运行?
很多“打不开”其实是 php-fpm 根本没启动,或者启动失败后自动退出。宝塔界面上显示“运行中”,但实际进程已崩,很常见。
- 进宝塔 → 软件商店 → 找到你用的 PHP 版本(比如 PHP-7.4)→ 点击“设置” → 看“服务管理”里
php-fpm是否为绿色“正在运行”;如果不是,点“启动”并观察是否秒退 - 如果启动失败,点“日志”看最后一行错误,典型如:
ERROR: unable to bind listening socket for address '127.0.0.1:9000': Address already in use,说明端口被占,得查netstat -tuln | grep :9000 - 也可能是配置文件语法错误:宝塔的 PHP 配置路径是
/www/server/php/{版本号}/etc/php-fpm.conf,改过就用php-fpm -t -c /www/server/php/74/etc/php-fpm.conf测试语法
nginx 是否正确转发到 PHP-FPM?
即使 php-fpm 活着,nginx 若没配好 fastcgi_pass 或 root 路径错,照样 502 或 404。
- 进宝塔 → 网站 → 对应站点 → “配置文件”,确认里面有没有类似这段:
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000; # 或 unix:/tmp/php-cgi-74.sock
fastcgi_index index.php;
include fastcgi.conf;
}
注意:fastcgi_pass 的地址必须和你当前 PHP 版本的 listen 值一致(查 /www/server/php/74/etc/php-fpm.d/www.conf 里的 listen = 行)