温馨提示×

linux laravel怎样配环境

小樊
44
2026-09-25 11:45:53
栏目: 智能运维

下面给你一套在 Linux 上配置 Laravel 开发/运行环境的常用方案,从“最基础”到“推荐方式”都有,你可以按自己需求选。


一、最基础方式(PHP + Composer + Nginx/Apache)

1. 安装 PHP(推荐 8.1+)

以 Ubuntu 为例:

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

查看版本:

php -v

2. 安装 Composer(Laravel 必需)

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

3. 安装 Laravel

方式一:全局安装 Laravel 安装器

composer global require laravel/installer

加到 PATH(一般加在 ~/.bashrc 或 ~/.zshrc):

export PATH="$HOME/.config/composer/vendor/bin:$PATH"

创建项目:

laravel new blog

方式二:直接用 Composer 建项目(更常用)

composer create-project laravel/laravel blog

4. 配置 Web 服务器(Nginx 示例)

sudo apt install nginx

配置文件示例(/etc/nginx/sites-available/blog):

server {
    listen 80;
    server_name localhost;
    root /var/www/blog/public;

    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/php-fpm.sock;
    }
}

启用:

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

5. 权限设置(重要)

chown -R www-data:www-data /var/www/blog
chmod -R 755 /var/www/blog
chmod -R 777 /var/www/blog/storage

二、推荐方式(Docker,最省心)

使用 Laravel Sail(官方 Docker 方案)

curl -s "https://laravel.build/blog" | bash
cd blog
./vendor/bin/sail up -d

访问:

http://localhost

常用命令:

./vendor/bin/sail artisan migrate
./vendor/bin/sail shell

✅ 不需要自己装 PHP / Nginx / MySQL


三、数据库(MySQL 示例)

sudo apt install mysql-server
sudo mysql_secure_installation

.env 中配置:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=密码

四、常见问题

1. storage 没权限

php artisan cache:clear
chmod -R 777 storage bootstrap/cache

2. 密钥未生成

php artisan key:generate

3. 端口被占用

sudo lsof -i:80

五、选择建议

场景 推荐
学习 / 快速开发 Laravel Sail
服务器部署 PHP + Nginx
多项目隔离 Docker
新手 Sail 或 Laragon(Windows)

如果你告诉我:

  • 用的 Linux 发行版(Ubuntu / CentOS / Arch)
  • 是 本地开发还是服务器部署
  • 是否用 Docker

我可以直接给你一步步可复制的命令。

0 踩