售前咨询400-838-0503

如何在Linux云服务器上安装Laravel?

发布:2025-03-31 10:55

搜索全部帮助分类的文档

零基础教程:手把手教你Linux云服务器部署Laravel全攻略

在当今云计算时代,将Laravel项目部署到Linux云服务器已成为开发者的必备技能。本文将通过7个详细步骤,带你完成从零开始的Laravel部署全过程,特别针对阿里云/腾讯云等主流云服务商环境优化配置。

一、服务器环境准备(耗时约15分钟)

1. 连接服务器:使用SSH客户端(如PuTTY或终端)连接

ssh root@your_server_ip

2. 系统更新:执行基础环境配置

sudo apt update && sudo apt upgrade -y

3. 安装必备工具:

sudo apt install -y git curl unzip

二、LAMP/LEMP环境搭建(核心环节)

方案A:传统LAMP栈安装

  1. 安装Apache:sudo apt install apache2 -y
  2. 安装MySQL:sudo apt install mysql-server -y
  3. 安全配置MySQL:sudo mysql_secure_installation
  4. 安装PHP 8.2+:sudo apt install php libapache2-mod-php php-mysql php-mbstring php-xml php-zip -y

方案B:高性能LEMP栈(推荐)

  1. 安装Nginx:sudo apt install nginx -y
  2. MySQL安装同方案A
  3. 安装PHP-FPM:sudo apt install php-fpm php-mysql php-mbstring php-xml php-zip -y
  4. 验证PHP:php -v

三、Composer安装与Laravel部署(关键步骤)

1. 安装Composer:

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

2. 创建Laravel项目:

cd /var/www
sudo composer create-project laravel/laravel your-project-name
sudo chown -R www-data:www-data /var/www/your-project-name
sudo chmod -R 775 /var/www/your-project-name/storage

四、数据库配置与.env设置

1. 登录MySQL创建数据库:

mysql -u root -p
CREATE DATABASE laravel_db;
GRANT ALL ON laravel_db.* TO 'laravel_user'@'localhost' IDENTIFIED BY 'your_password';
FLUSH PRIVILEGES;
EXIT;

2. 配置.env文件:

cd /var/www/your-project-name
cp .env.example .env
nano .env

修改关键参数:

DB_DATABASE=laravel_db
DB_USERNAME=laravel_user
DB_PASSWORD=your_password

五、Web服务器配置(Nginx示例)

sudo nano /etc/nginx/sites-available/your-project-name

粘贴以下配置:

server {
    listen 80;
    server_name your_domain.com;
    root /var/www/your-project-name/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:/var/run/php/php8.2-fpm.sock;
    }
}

启用配置:

sudo ln -s /etc/nginx/sites-available/your-project-name /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

六、最终优化与安全设置

  1. 生成应用密钥:php artisan key:generate
  2. 目录权限设置:sudo chmod -R 775 storage bootstrap/cache
  3. 配置防火墙:sudo ufw allow 80/tcp && sudo ufw allow 22/tcp
  4. 设置任务调度(Crontab):* * * * * cd /var/www/your-project-name && php artisan schedule:run >> /dev/null 2>&1

常见问题解决指南

问题1:502 Bad Gateway错误
解决方案:检查PHP-FPM运行状态 systemctl status php8.2-fpm

问题2:目录权限问题
解决方案:递归修改所有权 sudo chown -R www-data:www-data /var/www/your-project-name

问题3:Composer内存不足
解决方案:增加内存限制 COMPOSER_MEMORY_LIMIT=-1 composer update

通过以上步骤,你的Laravel应用已成功部署到Linux云服务器。建议后续:

  • 配置HTTPS证书(Let's Encrypt)
  • 设置自动化部署流程
  • 启用Redis缓存提升性能

如需更高级的部署方案,可考虑使用Laravel Forge或Envoyer等专业工具。

按文档操作后还是不行,把机器编号、出问题的时间点和现象截图一起提工单,能少来回一轮。

提交工单