温馨提示×

Debian下Laravel出错咋办

小樊
43
2026-09-11 05:28:42
栏目: 智能运维

在 Debian 下运行 Laravel 出错,一般按**“看日志 → 定位环境 → 逐项排查”**的思路来处理。下面给你一套实战排查清单。


一、先看错误在哪(最关键)

1. Web 访问报错

  • 页面空白 / 500
    Laravel 日志
    tail -f storage/logs/laravel.log
    
  • 或直接开调试(开发环境):
    APP_DEBUG=true
    

2. 命令行报错

php artisan <命令>

看终端报错信息即可。


二、Debian 常见环境问题

1. PHP 版本不对(最常见)

Laravel 对 PHP 有要求(如 Laravel 10 需要 PHP 8.1+)

查看版本:

php -v

Debian 默认可能还是 PHP 7.4,需要装新版本:

sudo apt install php8.1 php8.1-cli php8.1-fpm php8.1-mysql php8.1-mbstring php8.1-xml php8.1-curl

2. 必备 PHP 扩展缺失

常见缺:

  • mbstring
  • xml
  • curl
  • zip
  • gd
  • bcmath
  • sqlite / mysql

安装示例:

sudo apt install php8.1-mbstring php8.1-xml php8.1-curl php8.1-zip php8.1-gd php8.1-bcmath

检查扩展:

php -m | grep -E 'mbstring|xml|curl'

3. 权限问题(Debian 特有高发)

Laravel 需要写:

  • storage
  • bootstrap/cache

修复权限:

sudo chown -R www-data:www-data /var/www/laravel
sudo chmod -R 755 storage bootstrap/cache

如果你是 CLI 运行:

sudo chown -R $USER:www-data storage bootstrap/cache

4. Composer 依赖没装 / 版本冲突

composer install
composer update

报内存不足:

php -d memory_limit=-1 composer install

5. Nginx / Apache 配置错误

Nginx 要点

  • root 指向 public
  • 重写规则(index.php)

示例:

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

6. .env 没配置或缓存错误

cp .env.example .env
php artisan key:generate

清缓存:

php artisan config:clear
php artisan cache:clear
php artisan route:clear

三、快速自检脚本(建议你跑一遍)

php -v
php -m
tail -n 50 storage/logs/laravel.log
composer diagnose
php artisan --version

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

你可以直接贴:

  1. 完整报错信息(终端或网页)
  2. Debian 版本(cat /etc/os-release
  3. PHP 版本
  4. Laravel 版本(php artisan --version

我可以按你的具体错误一行一行帮你修

0