linux

Laravel在Linux上如何高效部署

小樊
44
2025-06-21 06:38:28
栏目: 智能运维

在Linux上高效部署Laravel应用涉及多个步骤,包括安装必要的软件环境、配置Web服务器、设置数据库、优化性能等。以下是一个详细的指南:

安装必要的软件环境

  1. 更新系统
sudo apt update && sudo apt upgrade -y
  1. 安装PHP及其扩展
sudo apt install php php-fpm php-mysql php-curl php-mbstring php-xml php-zip php-gd php-bcmath
  1. 安装Composer
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
  1. 安装Nginx或Apache
# 安装Nginx
sudo apt install nginx

# 安装Apache
sudo apt install apache2
  1. 安装MySQL或PostgreSQL
# 安装MySQL
sudo apt install mysql-server

# 安装PostgreSQL
sudo apt install postgresql postgresql-contrib

配置Web服务器

使用Nginx配置示例:

server {
    listen 80;
    server_name yourdomain.com;
    root /path/to/your/laravel/public;
    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Content-Type-Options "nosniff";
    index index.html index.htm index.php;
    charset utf-8;
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }
    location ~* ^/(css|img|js|flv|swf|download)/(.+)$ {
        root $root_path;
    }
    location ~ /\.ht {
        deny all;
    }
}

保存文件并重启Nginx:

sudo systemctl restart nginx

部署Laravel应用

  1. 克隆或下载Laravel项目
cd /var/www
git clone https://github.com/your-username/your-laravel-project.git
  1. 安装项目依赖
cd your-laravel-project
composer install --no-dev --optimize-autoloader
  1. 配置环境变量

复制 .env.example 文件为 .env,并配置数据库连接等信息:

cp .env.example .env
nano .env

生成应用密钥:

php artisan key:generate
  1. 运行迁移和优化
php artisan migrate --force
php artisan config:cache
php artisan route:cache
php artisan view:cache
  1. 设置文件权限

确保Laravel的 storagebootstrap/cache 目录具有正确的权限:

sudo chown -R www-data:www-data /path/to/your/laravel/storage
sudo chown -R www-data:www-data /path/to/your/laravel/bootstrap/cache
sudo chmod -R 775 /path/to/your/laravel/storage
sudo chmod -R 775 /path/to/your/laravel/bootstrap/cache

优化Laravel性能

  1. 使用缓存

配置缓存驱动(如Redis或Memcached)以缓存频繁访问的数据。

php artisan config:cache
  1. 优化数据库查询

使用Eager Loading预加载关联数据,减少查询次数。

  1. 使用PHP OPcache

安装并配置OPcache扩展,缓存编译后的PHP字节码。

sudo apt-get install php-opcache

php.ini 中配置:

opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.revalidate_freq=60
  1. 启用Laravel缓存

.env 文件中配置缓存驱动:

CACHE_DRIVER=redis
SESSION_DRIVER=redis
  1. 使用队列处理耗时任务
php artisan queue:work --daemon
  1. 配置SSL证书

为了提高安全性,建议为你的Laravel应用配置SSL证书,可以使用Let’s Encrypt免费获取。

通过以上步骤,你可以在Linux系统上成功部署和优化Laravel应用,从而提高开发效率和应用性能。

0
看了该问题的人还看了