温馨提示×

ubuntu上thinkphp报错咋办

小樊
47
2026-10-16 07:09:31
栏目: 编程语言

在 Ubuntu 上运行 ThinkPHP 报错,原因很多,下面按最常见情况一步步帮你排查和解决。


一、先看报错信息(最重要)

先确认是哪种错误:

tail -f /var/log/nginx/error.log
# 或
tail -f /var/log/apache2/error.log

ThinkPHP 项目目录下的日志:

runtime/log/

二、最常见问题 & 解决办法

✅ 1. 权限问题(非常常见)

报错示例:

  • Permission denied
  • 页面空白
  • 日志无法写入

解决:

sudo chown -R www-data:www-data /var/www/your_project
sudo chmod -R 755 /var/www/your_project
sudo chmod -R 777 /var/www/your_project/runtime

Apache/Nginx 用户通常是 www-data


✅ 2. PHP 版本不兼容

报错示例:

  • Parse error
  • This version of ThinkPHP requires PHP >= 7.1

查看 PHP 版本:

php -v

ThinkPHP 版本要求:

ThinkPHP PHP
5.0 ≥ 5.4
5.1 ≥ 5.6
6.0 ≥ 7.1
8.0 ≥ 7.2

切换 PHP 版本(示例):

sudo update-alternatives --set php /usr/bin/php7.4

✅ 3. 未开启必要 PHP 扩展

常见缺失扩展:

  • php-mbstring
  • php-curl
  • php-xml
  • php-mysql
  • php-zip

安装:

sudo apt install php-mbstring php-curl php-xml php-mysql
sudo systemctl restart apache2
# 或
sudo systemctl restart nginx

✅ 4. URL 重写问题(404 / 首页能开子页不行)

Nginx 配置示例:

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

Apache:

确保开启 mod_rewrite

sudo a2enmod rewrite
sudo systemctl restart apache2

✅ 5. 配置文件错误

报错示例:

  • 数据库连不上
  • 空白页

检查:

config/database.php
.env

确保:

  • 数据库地址正确
  • 用户名密码正确
  • 数据库已创建

✅ 6. 开启了调试但没显示错误

在 .env 中:

APP_DEBUG = true

或 config/app.php:

'app_debug' => true,

三、快速自检清单 ✅

php -v
php -m
ls -l runtime
cat .env

四、如果你愿意,我可以更精准帮你

你可以直接把 报错信息贴出来(哪怕是英文或中文),例如:

  • 白屏
  • 500 错误
  • Class not found
  • SQLSTATE[HY000]
  • No input file specified

我可以按你的 ThinkPHP 版本 + Ubuntu 版本 + Web 服务(Nginx/Apache) 精确给命令。

0 踩