帮助中心
如何在Ubuntu 24.04上安装Laravel PHP框架

如何在Ubuntu 24.04上安装Laravel PHP框架


Laravel 是一个基于 PHP 的网络应用程序框架,用于构建企业网络应用程序。它是一个免费、开放的网络框架,采用模型-视图-控制器(MVC)架构,基于 Symfony。它提供了优雅的语法,让你可以用简洁的代码创建应用程序,而且易于阅读和理解。


Laravel 是一款企业级网络框架,可用于构建企业级、健壮的全栈网络应用程序。Laravel 应用程序可以快速交付,从开发过程到生产过程都不会让人头疼。


本指南将教你如何在 Ubuntu 24.04 服务器上安装 Laravel 网络框架。你将使用 LAMP Stack(Linux、Apache、MySQL/MariaDB 和 PHP)和 Composer PHP 包管理器安装 Laravel。


前提条件


开始本指南之前,请确保具备以下条件:


  • Ubuntu 24.04 服务器。
  • 具有管理员权限的非 root 用户
  • 安装 LAMP Stack 和 Composer


Laravel 是现代网络开发中流行的 PHP 网络框架。因此,必须确保在 Ubuntu 服务器上安装了 PHP 和其他依赖项。在本节中,你将使用 LAMP Stack(Linux、Apache、MySQL/MariaDB 和 PHP)和 Composer 安装 Laravel。


在安装软件包之前,运行以下命令更新你的 Ubuntu 软件源。

sudo apt update


现在运行以下命令安装 Laravel 的依赖项,包括 LAMP Stack(Linux、Apache、MySQL/MariaDB 和 PHP)、Composer 和 Git。

sudo apt install apache2 mariadb-server php php-curl php-bcmath php-json php-mysql php-mbstring php-xml php-tokenizer php-zip composer git

输入 Y 继续安装。



安装完成后,检查 Apache 和 MariaDB 服务状态。然后检查 PHP 和 Composer 版本。


使用以下命令检查 Apache 服务状态。Ubuntu 上默认的 Apache 服务应已启用并自动运行。

sudo systemctl is-enabled apache2
sudo systemctl status apache2

输出:



现在使用下面的命令检查 MariaDB 服务。在 Ubuntu 系统中,MariaDB 服务器应该已启用并正在运行。

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb

输出:



最后,使用下面的命令检查 PHP 和 Composer 的版本。您将看到系统中安装了 PHP 8.3 和 Composer 2.7.1。

php -v
sudo -u www-data composer -v



可选项:安装 Node.js 和 NPM(Node.js 包管理器)


如果将 Laravel 与 Blade 和 JavaScript 等模板引擎结合使用,则需要 Node.js 和 NPM。在本节中,你将通过 Ubuntu 软件源安装 Node.js 和 NPM(Node.js 包管理器)。


要在 Ubuntu 系统上安装 Node.js 和 NPM,请运行以下命令:

sudo apt install nodejs npm

键入 Y 确认安装。



安装完成后,输入以下命令检查 Node.js 和 NPM 的版本。

node --version
npm --version

以下输出显示已安装 Node.js 18 和 NPM 9.5。



配置 PHP


要运行 Laravel,必须确保某些 PHP 扩展已启用,如 fileinfo、mbstring 和 openssl。因此,现在通过修改 "php.ini "文件来加载这些 PHP 扩展。


使用 nano 编辑器编辑默认的 PHP 配置文件"/etc/php/8.3/apache2/php.ini"。

sudo nano /etc/php/8.3/apache2/php.ini

取消下面几行以启用 PHP 扩展名 fileinfo、mbstring 和 openssl。

extension=fileinfo
extension=mbstring
extension=openssl

保存文件并退出编辑器。


现在运行下面的命令重启 Apache 服务并将更改应用于 PHP。

sudo systemctl restart apache2

接下来,使用以下命令验证 PHP 扩展名 fileinfo、mbstring 和 openssl。如果这些扩展已启用,将显示每个扩展的名称。

sudo php -m | grep 'fileinfo\|mbstring\|openssl'


此外,还可以通过 PHPINFO 验证已启用的 PHP 扩展名列表。使用以下命令创建一个新的 PHPINFO 文件。

echo "<?php phpinfo(); ?>" > /var/www/html/info.php

然后,访问 http://192.168.5.30/info.php。检查扩展名 fileinfo、mbstring 和 openssl,确保这些扩展名已启用。



配置 MariaDB 服务器


配置好 PHP 后,需要确保 MariaDB 服务器的安全,并为 Laravel 创建一个新的数据库和用户。


运行下面的 "mariadb-secure-installation "命令来保护你的 MariaDB 服务器。现在,系统会提示你配置 MariaDB 服务器。

sudo mariadb-secure-installation

出现提示时,输入 "Y "应用新配置,或输入 "N "拒绝。


  • 默认的 MariaDB 安装没有密码。提示输入密码时按 ENTER 键。
  • 现在,输入 Y 设置 MariaDB 根密码。然后,键入 MariaDB 的新密码并重复密码。
  • 输入 Y 从 MariaDB 安装中删除匿名用户。
  • 出现提示时再次输入 Y,禁用 MariaDB 根用户的远程登录。
  • 输入 Y 从 MariaDB 中移除默认数据库测试。
  • 最后,输入 Y 以重新加载表权限并应用新的更改。


确保 MariaDB 服务器安全后,必须为 Laravel 项目创建一个新数据库和用户。


使用下面的命令登录 MariaDB 服务器。根据提示输入你的 MariaDB 根密码。

sudo mariadb -u root -p

现在运行以下查询,创建一个新数据库和用户 "laravelapp",密码为 "password"。

CREATE DATABASE laravelapp;
CREATE USER laravelapp@localhost IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON laravelapp.* TO laravelapp@localhost;
FLUSH PRIVILEGES;



接下来,运行以下查询验证用户 "laravelapp "的权限。这将确保用户可以访问 Laravel 数据库 "laravelapp"。

SHOW GRANTS FOR laravelapp@localhost;

最后,键入 quit 退出 MariaDB 服务器。



通过 Composer 安装 Laravel


配置好 PHP 并创建了 MySQL/MariaDB 数据库和用户后,就可以安装 Laravel 了。本节将设置项目目录,通过 Composer 安装 Laravel,并将 Laravel 与 MySQL/MariaDB 数据库集成。


首先,运行下面的命令创建 /var/www/.cache 目录(用于 Composer 缓存)、/var/www/.config 目录(用于额外的 Composer 配置)和 /var/www/laravelapp 目录(用于 Laravel 项目)。

sudo mkdir -p /var/www/{.cache,.config,laravelapp}

现在将 /var/www/.cache、/var/www/.config 和 /var/www/laravelapp 目录的所有权更改为用户 "www-data"。

sudo chown -R www-data:www-data /var/www/{.cache,.config,laravelapp}

接下来,进入 /var/www/laravelapp 目录,使用下面的 Composer 命令安装 Laravel。

cd /var/www/laravelapp/
sudo -u www-data composer create-project laravel/laravel .

Laravel 的安装过程如下:



现在用下面的 nano 编辑器命令打开".env "文件。

nano .env

将默认的 "APP_URL "改为本地域名。在本例中,Laravel 将运行在 "laravelapp.local "域名上。

APP_URL=http://laravelapp.local

将默认的 "DB_CONNECTION "改为 "mysql",取消注释,并根据你的信息修改数据库细节。

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravelapp
DB_USERNAME=laravelapp
DB_PASSWORD=password

保存并退出文件。


最后,运行下面的命令为你的 Laravel 项目迁移数据库。

sudo -u www-data php artisan migrate

Laravel 数据库迁移的输出:



为 Laravel 安装虚拟主机


在本节中,你将为 Laravel 设置虚拟主机文件。确保为 Laravel 开发准备好本地域名。


在创建虚拟主机之前,使用下面的命令启用 Apache 的 "重写 "模块。

sudo a2enmod rewrite

使用 nano 编辑器创建新的虚拟主机配置"/etc/apache2/sites-available/laravelapp.conf"。

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

添加以下配置,并将 ServerName 选项改为 Laravel 域名,如 "laravelapp.local"。

<VirtualHost *:80>

ServerAdmin admin@laravelapp.local
ServerName laravelapp.local
DocumentRoot /var/www/laravelapp/public

<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/laravelapp>
AllowOverride All
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

保存文件并退出编辑器。


现在运行下面的命令激活 "laravelapp.conf "虚拟主机并验证 Apache 语法。如果没有错误,你应该看到输出 "语法OK"。

sudo a2ensite laravelapp.conf
sudo apachectl configtest

重启 Apache 服务,应用新的 Laravel 虚拟主机文件。重启 Apache 后,你的 Laravel 安装就绪了。

sudo systemctl restart apache2


访问 Laravel 项目


至此,你就可以通过 "hosts "文件访问你的 Laravel 安装了。


对于 Linux 或 MacOS 用户,以 root 权限修改"/etc/hosts "文件。对于 Windows 用户,以管理员身份打开 "C:\Windows\System32\drivers\etc\hosts "文件。


在 Ubuntu 服务器 IP 地址后添加 Laravel 域名,如下所示:

192.168.5.30 laravelapp.local

保存并退出文件。


现在用浏览器访问 http://laravelapp.local/。如果 Laravel 安装成功,你将看到如下页面:



结论


恭喜你!你已经在 Ubuntu 24.04 上完成了 Laravel 的安装。你已经使用 LAMP Stack(Linux、Apache、MySQL/MariaDB 和 PHP)运行了 Laravel,并学会了创建项目的基本 Composer 命令。

文章相关标签: Ubuntu 24.04 Laravel PHP框架
购物车