linux

Linux中Laravel项目如何部署

小樊
40
2025-06-11 04:38:15
栏目: 智能运维

在Linux系统中部署Laravel项目需要经过以下几个步骤:

  1. 安装环境依赖

在开始之前,请确保您的Linux系统已经安装了以下软件:

  1. 上传项目文件

将您的Laravel项目文件上传到服务器。您可以使用FTP、SCP或其他文件传输方法。

  1. 安装PHP依赖

在项目根目录下运行以下命令,以安装项目所需的PHP扩展和依赖:

composer install
  1. 配置环境变量

复制.env.example文件并将其重命名为.env

cp .env.example .env

使用文本编辑器打开.env文件,然后配置数据库连接信息和其他相关设置。

  1. 生成应用密钥

运行以下命令生成Laravel应用密钥:

php artisan key:generate

这将在.env文件中设置APP_KEY值。

  1. 运行数据迁移和数据填充(可选)

如果您的应用程序需要设置数据库表结构和初始数据,可以运行以下命令:

php artisan migrate
php artisan db:seed
  1. 配置Web服务器

根据您选择的Web服务器(Nginx或Apache),配置虚拟主机以指向Laravel项目的public目录。以下是一个简单的Nginx配置示例:

server {
    listen 80;
    server_name example.com;
    root /path/to/your/laravel/project/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;
    }
}

确保将server_nameroot指令更改为适当的值。

  1. 重启Web服务器

对于Nginx,运行:

sudo service nginx restart

对于Apache,运行:

sudo service apache2 restart
  1. 设置文件权限

为了确保Laravel应用程序正常运行,您需要设置正确的文件权限。在项目根目录下运行以下命令:

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

这将使Web服务器用户(通常是www-data)拥有storagebootstrap/cache目录的所有权,并设置适当的权限。

现在,您的Laravel项目应该已经在Linux服务器上部署成功并可以访问了。如果遇到任何问题,请查看Laravel日志(位于storage/logs目录下)以获取详细错误信息。

0
看了该问题的人还看了