在Debian上部署Laravel项目是一个相对直接的过程,以下是详细的步骤:
首先,确保你的Debian系统是最新的:
sudo apt update
sudo apt upgrade
安装Nginx,这是Laravel推荐的Web服务器:
sudo apt install nginx
安装完成后,启动Nginx服务并检查其状态:
sudo systemctl start nginx
sudo systemctl status nginx
安装PHP及其必要的扩展,这些扩展对于Laravel的运行至关重要:
sudo apt install php php-cli php-common php-json php-gmp php-fpm php-xmlrpc php-bcmath php-imagick php-curl php-zip php-gd php-mysql php-xml php-mbstring php-xmlrpc php-intl php-sqlite3
检查PHP是否安装成功:
php -v
安装MariaDB或MySQL数据库:
sudo apt install mariadb-server
在安装过程中,系统会提示你设置root密码,请选择一个强密码并确保其安全。
Composer是PHP的依赖管理工具,用于安装和管理Laravel项目所需的依赖包:
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
验证Composer是否安装成功:
composer --version
选择一个目录用于存放Laravel项目,并使用Composer创建新项目:
cd /home/david
composer create-project --prefer-dist laravel/laravel example-app
在 /etc/nginx/conf.d
目录下创建一个新的配置文件,例如 example-app.conf
,并添加以下内容:
server {
listen 80;
listen [::]: 80;
server_name example.local;
root /home/david/example-app/public;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
index index.php;
charset utf-8;
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;
}
}
替换 example.local
为你的域名,并确保Nginx配置文件指向正确的Laravel项目目录。
最后,重启Nginx服务以应用新的配置:
sudo systemctl restart nginx
进入项目目录并修改 .env
文件以匹配你的环境:
cd /home/david/example-app
cp .env.example .env
nano .env
编辑 .env
文件,设置数据库连接信息:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=example_db
DB_USERNAME=root
DB_PASSWORD=secret
生成应用密钥:
php artisan key:generate
运行数据库迁移以设置数据库结构:
php artisan migrate
在浏览器中访问 http://example.local
,你应该能看到Laravel的欢迎页面。