在Debian上部署Laravel项目需要遵循以下步骤:
- 安装必要的软件包 首先,确保你的Debian系统已经安装了Nginx、PHP和MySQL。你可以使用以下命令安装它们:
sudo apt-get update sudo apt-get install nginx sudo apt-get install php-fpm php-mysql php-json php-common php-mbstring php-xml php-zip unzip
- 安装Composer Composer是PHP的依赖管理工具,用于安装和管理Laravel项目所需的库。使用以下命令安装Composer:
curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer
- 配置Nginx
创建一个新的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; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /\.ht { deny all; } }
将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
- 配置PHP
编辑
/etc/php/7.4/fpm/php.ini
文件,根据你的需求调整以下设置:
- 将
memory_limit
设置为更高的值,例如256M
。 - 将
upload_max_filesize
和post_max_size
设置为更高的值,例如100M
。
- 配置MySQL 登录到MySQL并创建一个新的数据库和用户,用于存储Laravel项目的数据:
CREATE DATABASE laravel_db; CREATE USER 'laravel_user'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON laravel_db.* TO 'laravel_user'@'localhost'; FLUSH PRIVILEGES;
将laravel_db
替换为你的数据库名称,将laravel_user
替换为你的数据库用户名,将your_password
替换为你的数据库密码。
- 部署Laravel项目
将你的Laravel项目上传到服务器上的指定目录(例如
/var/www/yourdomain.com
)。然后,在项目根目录下运行以下命令:
cd /path/to/your/laravel/project composer install php artisan key:generate php artisan migrate php artisan config:cache
这将安装项目的依赖项,生成应用程序密钥,运行数据库迁移并缓存配置文件。
- 设置文件权限
确保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
现在,你的Laravel项目应该已经在Debian上成功部署并可以访问了。