linux

Laravel与Linux服务器的集成方案

小樊
40
2025-08-07 09:10:58
栏目: 云计算

以下是Laravel与Linux服务器的集成方案,涵盖环境配置、部署流程及优化建议:

一、环境准备

  1. 安装基础软件

    • PHP:安装PHP 7.3+及必要扩展(如php-fpmphp-mysqlphp-curl等)。
      sudo apt update
      sudo apt install php-fpm php-mysql php-curl php-mbstring php-xml php-zip
      
    • Web服务器:选择Nginx或Apache,以Nginx为例:
      sudo apt install nginx
      
    • 数据库:安装MySQL/PostgreSQL,推荐MySQL。
      sudo apt install mysql-server
      sudo mysql_secure_installation
      
  2. 配置数据库

    • 创建数据库及用户,并授权:
      CREATE DATABASE laravel_db;
      CREATE USER 'laravel_user'@'localhost' IDENTIFIED BY 'password';
      GRANT ALL PRIVILEGES ON laravel_db.* TO 'laravel_user'@'localhost';
      FLUSH PRIVILEGES;
      

二、部署Laravel项目

  1. 上传项目

    • 通过FTP/SCP将Laravel项目上传至服务器指定目录(如/var/www/)。
  2. 配置环境变量

    • 复制.env.example.env,修改数据库连接、APP_URL等参数。
      DB_CONNECTION=mysql
      DB_HOST=127.0.0.1
      DB_PORT=3306
      DB_DATABASE=laravel_db
      DB_USERNAME=laravel_user
      DB_PASSWORD=password
      
  3. 安装依赖与生成密钥

    • 安装Composer依赖:
      composer install --no-dev --optimize-autoloader
      
    • 生成应用密钥:
      php artisan key:generate
      
  4. 配置Web服务器

    • Nginx:修改配置文件(如/etc/nginx/sites-available/default),指向项目public目录。
      server {
          listen 80;
          server_name example.com;
          root /var/www/laravel/public;
          location / {
              try_files $uri $uri/ /index.php?$query_string;
          }
          location ~ \.php$ {
              fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
              fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
              include fastcgi_params;
          }
      }
      
    • 重启Web服务器:
      sudo systemctl restart nginx
      
  5. 设置权限

    • 确保storagebootstrap/cache目录可写:
      sudo chown -R www-data:www-data /var/www/laravel
      sudo chmod -R 755 /var/www/laravel/storage /var/www/laravel/bootstrap/cache
      

三、优化与扩展

  1. 启用缓存

    • 生成配置缓存和路由缓存,提升性能:
      php artisan config:cache
      php artisan route:cache
      
  2. 配置队列(可选)

    • 若使用队列,安装Redis并配置.env
      QUEUE_CONNECTION=redis
      
      sudo apt install redis-server
      sudo systemctl start redis-server
      
  3. HTTPS支持(可选)

    • 使用Let’s Encrypt配置SSL证书,强制HTTPS跳转。

四、验证与维护

参考来源

0
看了该问题的人还看了