如何在Linux部署Laravel

发布时间:2024-11-28 14:47:22 作者:小樊
来源:亿速云 阅读:78

在 Linux 上部署 Laravel 的基本步骤如下:

  1. 安装 LAMP 或 LEMP 环境

Laravel 需要 PHP、Apache(或其他 Web 服务器)和 MySQL(或其他数据库服务器)的支持。你可以选择安装 LAMP(Linux, Apache, MySQL, PHP)或 LEMP(Linux, Nginx, MySQL, PHP)环境。以下是安装 LAMP 环境的命令:

# 更新软件包列表
sudo apt-get update

# 安装 Apache
sudo apt-get install apache2

# 安装 MySQL
sudo apt-get install mysql-server

# 安装 PHP
sudo apt-get install php libapache2-mod-php php-mysql

# 重启 Apache 服务器
sudo systemctl restart apache2

对于 LEMP 环境,你可以参考以下命令:

# 更新软件包列表
sudo apt-get update

# 安装 Nginx
sudo apt-get install nginx

# 安装 MySQL
sudo apt-get install mysql-server

# 安装 PHP
sudo apt-get install php-fpm php-mysql

# 配置 Nginx 以使用 PHP-FPM
sudo nano /etc/nginx/sites-available/default

/etc/nginx/sites-available/default 文件中,找到以下部分并进行修改:

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # 根据你的 PHP 版本进行修改
}

保存文件并重启 Nginx 服务器:

sudo systemctl restart nginx
  1. 安装 Composer

Composer 是 Laravel 的依赖管理工具。在终端中运行以下命令以安装 Composer:

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

使用 Composer 创建一个新的 Laravel 项目:

composer create-project --prefer-dist laravel/laravel your_project_name

your_project_name 替换为你的项目名称。

  1. 配置 Web 服务器

将 Laravel 项目的 public 目录设置为 Web 服务器的根目录。对于 Apache,你可以创建一个虚拟主机配置文件:

sudo nano /etc/apache2/sites-available/your_project_name.conf

在文件中添加以下内容:

<VirtualHost *:80>
    ServerName your_project_name.local
    DocumentRoot /path/to/your_project_name/public

    <Directory /path/to/your_project_name/public>
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

your_project_name 替换为你的项目名称,将 /path/to/your_project_name 替换为你的项目路径。保存文件并启用虚拟主机:

sudo a2ensite your_project_name.conf
sudo systemctl restart apache2

对于 Nginx,你需要修改 /etc/nginx/sites-available/default 文件:

server {
    listen 80;
    server_name your_project_name.local;
    root /path/to/your_project_name/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 = /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_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # 根据你的 PHP 版本进行修改
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }

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

同样,将 your_project_name 替换为你的项目名称,将 /path/to/your_project_name 替换为你的项目路径。保存文件并重启 Nginx 服务器:

sudo systemctl restart nginx
  1. 配置本地主机

为了让 your_project_name.local 在本地计算机上可用,你需要修改 /etc/hosts 文件:

sudo nano /etc/hosts

在文件末尾添加以下内容:

127.0.0.1 your_project_name.local

保存文件并退出。

  1. 运行 Laravel 项目

现在你可以通过访问 http://your_project_name.local 来运行你的 Laravel 项目了。在项目根目录下运行以下命令以生成应用密钥:

php artisan key:generate

根据你的需求配置 .env 文件中的数据库连接和其他设置。然后运行以下命令以执行数据库迁移和数据填充(如果有):

php artisan migrate
php artisan db:seed

现在你已经成功在 Linux 上部署了 Laravel 项目!

推荐阅读:
  1. 你为什么看不懂Linux内核驱动源码?
  2. 如何在Docker中部署Laravel应用

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux

上一篇:Laravel在Linux环境配置

下一篇:Linux使用Laravel新手指南

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》