温馨提示×

如何在ubuntu配置laravel环境

小樊
44
2026-10-25 03:41:26
栏目: 智能运维

下面给你一份在 Ubuntu 上配置 Laravel 开发/运行环境的完整流程(以 Ubuntu 22.04 / 24.04 为例,PHP 8.2+,Laravel 10/11 适用)。


一、更新系统

sudo apt update
sudo apt upgrade -y

二、安装 Nginx(或 Apache)

1. 安装 Nginx

sudo apt install nginx -y

2. 防火墙(可选)

sudo ufw allow 'Nginx Full'

三、安装 PHP 及必要扩展

1. 添加 PHP 源(Ubuntu 自带通常够用)

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

2. 检查 PHP 版本

php -v

Laravel 11 需要 PHP ≥ 8.2


四、安装 MySQL(或 PostgreSQL)

MySQL

sudo apt install mysql-server -y
sudo mysql_secure_installation

创建数据库

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

五、安装 Composer

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

六、创建 Laravel 项目

方法 1:Composer 创建

cd /var/www
sudo composer create-project laravel/laravel example-app

方法 2:已有项目

git clone your-repo.git
cd your-project
composer install

七、配置权限

sudo chown -R www-data:www-data /var/www/example-app
sudo chmod -R 755 /var/www/example-app
sudo chmod -R 775 /var/www/example-app/storage

八、配置 Nginx

sudo nano /etc/nginx/sites-available/example-app

示例配置:

server {
    listen 80;
    server_name example.com;
    root /var/www/example-app/public;

    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-Content-Type-Options "nosniff";

    index index.php;

    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 ~ /\.(?!well-known).* {
        deny all;
    }
}

启用站点:

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

九、配置 .env

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

编辑数据库:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_db
DB_USERNAME=laravel
DB_PASSWORD=password

十、运行迁移

php artisan migrate

十一、开发环境可选(推荐)

使用 Laravel Sail(Docker)

composer require laravel/sail --dev
php artisan sail:install
./vendor/bin/sail up

十二、常见问题

✅ 500 错误 → 看 storage/logs/laravel.log
✅ Permission denied → storage 权限
✅ PHP 版本不对 → 用 update-alternatives


如果你告诉我:

  • Ubuntu 版本
  • Laravel 版本
  • 是否用 Docker / 本地 / 服务器

我可以给你更精准的配置方案。

0 踩