温馨提示×

laravel在linux怎样配置

小樊
40
2026-10-01 07:18:12
栏目: 智能运维

下面按最常见场景(Laravel 部署在 Linux 服务器,如 Ubuntu/CentOS)给你一套实用配置流程,从环境到上线一步步来。


一、服务器基础环境(以 Ubuntu 为例)

1. 更新系统

sudo apt update
sudo apt upgrade -y

2. 安装 Nginx + PHP + MySQL

sudo apt install nginx php php-fpm php-mysql mysql-server -y

常用 PHP 扩展(Laravel 必需):

sudo apt install php-cli php-mbstring php-xml php-bcmath php-curl php-zip php-gd -y

查看 PHP 版本:

php -v

✅ Laravel 10 需要 PHP ≥ 8.1
✅ Laravel 11 需要 PHP ≥ 8.2


二、安装 Composer

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
composer -v

三、部署 Laravel 项目

1. 上传或克隆项目

cd /var/www
git clone your_repo.git laravel
cd laravel

或上传 zip 后解压。

2. 安装依赖

composer install --optimize-autoloader --no-dev

3. 配置环境

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

编辑 .env:

nano .env

重点改:

APP_ENV=production
APP_DEBUG=false
APP_URL=http://yourdomain.com

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3309
DB_DATABASE=laravel
DB_USERNAME=laravel
DB_PASSWORD=password

四、权限配置(非常重要)

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

五、Nginx 配置

1. 新建站点配置

sudo nano /etc/nginx/sites-available/laravel

示例配置:

server {
    listen 80;
    server_name yourdomain.com;

    root /var/www/laravel/public;

    index index.php index.html;

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

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

    location ~ /\.ht {
        deny all;
    }
}

2. 启用站点

sudo ln -s /etc/nginx/sites-available/laravel /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

六、数据库配置

mysql -u root -p
CREATE DATABASE laravel;
CREATE USER 'laravel'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON laravel.* TO 'laravel'@'localhost';
FLUSH PRIVILEGES;

迁移数据库:

php artisan migrate

七、优化(生产环境)

php artisan config:cache
php artisan route:cache
php artisan view:cache

八、常见问题

1. 500 错误

tail -f /var/www/laravel/storage/logs/laravel.log

2. 权限问题

sudo chown -R www-data:www-data storage

3. 使用 HTTPS(推荐)

sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx

九、如果你用的是宝塔 / 1Panel

基本一样,只是:

  • 用面板建站点
  • 根目录指向 public
  • 安装 PHP 扩展
  • 设置伪静态(Laravel 规则)

如果你告诉我:

  • Linux 发行版(Ubuntu / CentOS)
  • Laravel 版本
  • 是否用 Docker / 面板

我可以给你更精确的一步到位配置。

0 踩