在Debian系统下部署Laravel项目需要经过以下几个步骤:
首先,确保你的Debian系统已经安装了Nginx和PHP。如果没有,请运行以下命令来安装它们:
sudo apt update
sudo apt install nginx php-fpm php-mysql php-curl php-xml php-mbstring php-zip php-gd
创建一个新的Nginx配置文件,用于处理Laravel项目的请求。在/etc/nginx/sites-available
目录下创建一个名为yourdomain.com
的文件,并添加以下内容:
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
root /path/to/your/laravel/project/public;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # 根据你的PHP版本修改
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
将yourdomain.com
替换为你的域名,将/path/to/your/laravel/project/public
替换为你的Laravel项目的实际路径。
然后,创建一个符号链接,将新配置文件链接到sites-enabled
目录:
sudo ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled/
检查Nginx配置文件是否有语法错误:
sudo nginx -t
如果没有错误,重启Nginx服务:
sudo systemctl restart nginx
编辑/etc/php/7.4/fpm/pool.d/www.conf
文件(根据你的PHP版本修改路径),找到listen
行,将其更改为:
listen = /var/run/php/php7.4-fpm.sock
然后重启PHP-FPM服务:
sudo systemctl restart php7.4-fpm
确保Laravel项目的storage
和bootstrap/cache
目录具有可写权限:
sudo chown -R www-data:www-data /path/to/your/laravel/project/storage
sudo chown -R www-data:www-data /path/to/your/laravel/project/bootstrap/cache
如果尚未安装Composer,请运行以下命令来安装它:
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
进入Laravel项目目录,运行以下命令来安装依赖项:
cd /path/to/your/laravel/project
composer install
接下来,生成应用密钥:
php artisan key:generate
最后,运行以下命令来优化Laravel项目:
php artisan config:cache
php artisan route:cache
php artisan view:cache
现在,你的Laravel项目应该已经在Debian系统上成功部署并可以访问了。