下面是在 Debian(如 Debian 11 / 12) 上安装并运行 Laravel 的一套常见、稳妥流程。以 Laravel 10/11 + PHP 8.1/8.2 + Nginx/Apache + MySQL 为例。
sudo apt update
sudo apt upgrade -y
Laravel 需要 PHP 及常用扩展:
sudo apt install -y php php-cli php-fpm php-mysql php-mbstring php-xml php-bcmath php-curl php-zip php-gd php-intl
检查 PHP 版本:
php -v
Laravel 10 需要 PHP ≥ 8.1
Laravel 11 需要 PHP ≥ 8.2
cd /tmp
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
验证:
composer -V
composer global require laravel/installer
添加到 PATH(编辑 ~/.bashrc 或 ~/.profile):
export PATH="$HOME/.composer/vendor/bin:$PATH"
重新加载:
source ~/.bashrc
创建项目:
laravel new myapp
composer create-project laravel/laravel myapp
cd myapp
chown -R www-data:www-data storage bootstrap/cache
chmod -R 775 storage bootstrap/cache
sudo apt install -y nginx
sudo nano /etc/nginx/sites-available/myapp
示例配置:
server {
listen 80;
server_name your_domain_or_ip;
root /var/www/myapp/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:/run/php/php-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
启用站点:
sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
sudo apt install -y mysql-server
sudo mysql_secure_installation
创建数据库:
CREATE DATABASE laravel;
CREATE USER 'laravel'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON laravel.* TO 'laravel'@'localhost';
FLUSH PRIVILEGES;
编辑 .env:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=laravel
DB_PASSWORD=password
php artisan key:generate
php artisan migrate
本地开发可用:
php artisan serve
访问:
http://localhost:8000
storage 权限composer dump-autoload如果你愿意,我可以按你的 Debian 版本 / Web 服务器(Nginx 或 Apache)/ 是否用 Docker 给你一份更精确的教程。