温馨提示×

Ubuntu配置PHP出错咋办

小樊
37
2026-07-13 22:04:31
栏目: 编程语言

在 Ubuntu 上配置 PHP 出问题很常见,原因也很多。下面我按常见场景 + 排查步骤给你一个“通用排错指南”,你可以对照看看;如果还不行,把具体报错信息贴出来我可以更精准帮你。


一、先确认 PHP 是否安装成功

php -v

✅ 正常:显示 PHP 版本号
❌ 报错:command not found → 没装或没加入 PATH

安装 PHP(常见版本)

sudo apt update
sudo apt install php php-cli

二、如果是 Apache + PHP 不解析

1️⃣ 是否安装了 Apache PHP 模块

sudo apt install libapache2-mod-php

2️⃣ 启用 PHP 模块

sudo a2enmod php
sudo systemctl restart apache2

3️⃣ 测试 PHP

/var/www/html/ 下创建:

<?php
phpinfo();

浏览器访问:

http://localhost/info.php

❌ 如果浏览器直接显示代码 → PHP 没被解析


三、如果是 Nginx + PHP 不解析

1️⃣ 安装 PHP-FPM

sudo apt install php-fpm

2️⃣ 确认 PHP-FPM 正在运行

systemctl status php-fpm
# 或
systemctl status php8.1-fpm

3️⃣ Nginx 配置是否正确

关键配置:

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}

然后:

sudo nginx -t
sudo systemctl restart nginx

四、常见报错 & 解决办法

❌ 1. 404 Not Found

  • 文件路径不对
  • Nginx/Apache root 配置错误

❌ 2. 502 Bad Gateway

✅ 多半是 PHP-FPM 没启动或 sock 路径不对

sudo systemctl start php8.1-fpm

❌ 3. permission denied

sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html

❌ 4. 缺少扩展

sudo apt install php-mysql php-curl php-mbstring php-xml

五、查日志是最快定位方式

Apache

tail -f /var/log/apache2/error.log

Nginx

tail -f /var/log/nginx/error.log

PHP

tail -f /var/log/php8.1-fpm.log

六、快速自检清单 ✅

  • [ ] php -v 正常
  • [ ] phpinfo() 能解析
  • [ ] Web 服务已重启
  • [ ] 没有报错日志
  • [ ] 文件权限正确

七、我可以直接帮你定位

你可以直接把下面信息发我:

  1. Ubuntu 版本(lsb_release -a
  2. Web 服务器(Apache / Nginx)
  3. PHP 版本
  4. 完整报错信息(截图或文字)

我可以一步一步带你修 ✅

0