debian

Debian系统如何管理多个Laravel项目

小樊
43
2025-06-19 23:08:01
栏目: 智能运维

在Debian系统中管理多个Laravel项目,可以通过以下几个步骤来实现:

  1. 安装PHP和相关依赖

首先,确保你已经安装了PHP和相关的依赖包。你可以使用以下命令来安装它们:

sudo apt-get update
sudo apt-get install php php-cli php-fpm php-json php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath
  1. 安装Composer

Composer是PHP的依赖管理工具,用于安装和管理Laravel项目所需的库。你可以使用以下命令来全局安装Composer:

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
  1. 创建Laravel项目

使用Composer创建新的Laravel项目。例如,创建一个名为project1的新项目:

cd /var/www
sudo composer create-project --prefer-dist laravel/laravel project1

同样地,你可以为其他项目创建新的目录并运行相同的命令。

  1. 配置Nginx

为每个Laravel项目配置Nginx。首先,为每个项目创建一个新的Nginx配置文件。例如,为project1创建一个名为project1.conf的配置文件:

sudo nano /etc/nginx/sites-available/project1.conf

在配置文件中添加以下内容:

server {
    listen 80;
    server_name example.com; # 替换为你的域名
    root /var/www/project1/public;

    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-Content-Type-Options "nosniff";

    index index.php;

    charset utf-8;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location = /favicon.ico { access_log off; log_not_found off; }
    location = /robots.txt  { access_log off; log_not_found off; }

    error_page 404 /index.php;

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /\.(?!well-known).* {
        deny all;
    }
}

保存并关闭文件。然后,创建一个符号链接以启用该站点:

sudo ln -s /etc/nginx/sites-available/project1.conf /etc/nginx/sites-enabled

重复以上步骤,为其他项目创建并配置Nginx。

  1. 重启Nginx

每次更改Nginx配置后,都需要重启Nginx服务以使更改生效:

sudo systemctl restart nginx
  1. 设置文件权限

确保Laravel项目的storagebootstrap/cache目录具有适当的读写权限:

sudo chown -R www-data:www-data /var/www/project1
sudo chmod -R 755 /var/www/project1
sudo chmod -R 775 /var/www/project1/storage
sudo chmod -R 775 /var/www/project1/bootstrap/cache

重复以上步骤,为其他项目设置文件权限。

现在,你已经在Debian系统上成功管理了多个Laravel项目。你可以通过访问每个项目的域名来访问它们。

0
看了该问题的人还看了