如何在 Ubuntu 上安装 LAMP (Linux Apache MySQL PHP)?

2025年3月17日 | 阅读 8 分钟

引言

LAMP 是一个首字母缩写词,用于指代一个软件套装,其中包含 Linux 操作系统、Apache Web 服务器、MySQL 数据库和 PHP 编程语言。

它也被称为 LAMP 堆栈,用于开发动态 Web 应用程序。

它是一组软件,因此,我们可以独立安装所有组件软件,也可以作为一个整体安装。

LAMP 是 Linux、Apache、MySQL、PHP/Python/Perl 的缩写。有时,它被称为 LAMP 堆栈,因为该平台包含四个层。堆栈可以建立在多个操作系统上。使用 Windows 操作系统而不是 Linux 操作系统的开发人员被称为使用 WAMP,Macintosh 系统使用 MAMP,Solaris 系统使用 SAMP。

所有组件共享堆栈的必要功能。

  • Linux(操作系统): 它是一个开源且免费的操作系统,自 20 世纪 90 年代中期以来一直可用。它在全球拥有广泛的用户群,遍布各个行业。 Linux 操作系统之所以出名,部分原因是它比其他操作系统提供更多的配置和灵活性选项。
  • Apache(Web 服务器): 此 Web 服务器用于处理多个请求,并通过 HTTP 提供 Web 资产,因此任何人都可以通过公共域中的通用 Web URL 使用该应用程序。该 Web 服务器由开源社区开发和管理,是一个功能丰富且成熟的服务器,目前在 Internet 上执行着大量的网站份额。
  • MySQL(数据库): MySQL 数据库是一个开源 RDBMS(关系数据库管理系统),用于存储应用程序数据。我们可以使用 MySQL 存储每一条信息,并使用 SQL 轻松查询。如果我们要处理组织良好的业务领域,并且希望将此结构转换为后端,那么 SQL 是一个更好的选择。此外,MySQL 还可以兼容运行复杂的大型站点。
  • PHP(编程语言): PHP 是一种开源脚本语言,与 Apache 一起运行,以支持我们创建动态网页。我们不能使用 HTML 来实现动态过程,例如从数据库中提取信息。简单来说,我们将 PHP 代码写入页面中我们希望动态的部分,以提供这种功能。

它专为效率而开发。 PHP 通过允许我们编写新代码并立即找到最终更改而无需编译要求,使编程过程更容易更有趣。如果我们愿意,我们可以切换 PHP 以支持越来越流行的 Python 和 Perl 语言。

PHP 包括一个标准的分层架构,Linux 位于底层。名义上,PHP 位于表示层或顶层;PHP 元素位于 Apache 中。

LAMP 的重要性

Web 开发人员选择 LAMP 来创建 Web 应用程序的原因如下:

  • 成本: 每种 LAMP 技术都是开源的,因此任何公司或开发人员都可以使用它们而无需支付任何许可费。我们可以免费下载操作系统、脚本语言、数据库和 Web 服务器,而不是购买专有堆栈元素。它降低了创建 Web 应用程序的成本。
  • 效率: 创建一个新的 Web 开发堆栈需要对多种工具、库、模块和框架进行严格的测试。此外,LAMP 是一个经过尝试和测试的 Web 开发解决方案。 Web 开发人员可以加快应用程序开发并确定优先级,以专注于他们正在创建的内容,而不是他们如何创建它。
  • 维护: 在全球范围内,任何软件专家都可以通过修改、评论和分析公开可用的源代码来为 LAMP 堆栈技术开发做出贡献。他们定期维护和更新技术,使其保持安全和相关性。
  • 灵活性: LAMP 为 Web 开发人员提供了灵活性和可靠性。开发人员可以根据自己的需求进行更改,而 LAMP 的架构为所有层定义了软件元素。例如,他们可以使用除 Linux 以外的其他操作系统。
  • 支持: 著名的开源技术(如 LAMP)包括全球大型 IT 社区的支持。因此,LAMP 用户可以更方便地在公共 IT 论坛上找到资料。 多个 Web 开发人员可以分配示例代码或使用开源社区构建的经过测试的插件。

LAMP 的用法

LAMP 用于服务器端和后端开发。后端应用程序是在最终用户看不到的环境中执行的软件。 一些后端应用程序由以下内容组成:

  • 用于与其他几个应用程序通信的 API
  • 代码中的业务理念
  • 数据库组件
  • 数据处理应用程序

在我们的浏览器上显示的网页被称为前端应用程序。当我们访问该页面时,我们的浏览器会与后端应用程序协商以获取所需的信息,例如单击任何按钮。
开发人员利用 LAMP 来制作动态和静态 Web 内容。

  • 动态网页: 它们包含根据查看 Web 应用程序或网页的用户而修改的信息。例如,根据我们的位置修改的网站消息是动态内容。 此外,Web 服务器通过阐明业务理念或从数据库中获取信息来提供动态网站。
  • 静态网页: 对于每个用户,静态网页的信息都来自 Web 服务器。 例如,公司网站上的地址是静态内容。 多个 Web 开发人员使用 CSS 和 HTML 编程语言制作静态网页,并将它们作为文件保存在 Web 服务器应用程序中。

LAMP 的工作原理

Web 应用程序利用 LAMP 来使用 Web 浏览器响应请求。 MySQL 数据库和 Apache Web 服务器在 Linux 操作系统上执行并与 PHP 通信。 当我们在浏览器中打开任何网页时,LAMP 会经历以下过程:

  • 接收请求: Apache Web 服务器借助浏览器接受传入的请求。 如果请求是下载静态文件,则 Apache Web 服务器会使用正确的内容直接响应。 当请求是针对动态内容时,Apache Web 服务器会将该请求传递给 PHP 元素。 PHP 元素会查找并下载可以实现该请求的正确 PHP 文件。
  • 处理请求: PHP 文件包含 PHP 函数。 这些函数是用于生成动态内容的代码。 PHP 组件可以处理 PHP 函数,例如构建销售图表或转换测量单位。 几个 PHP 函数可能需要来自数据库的数据。 在这些类型的情况下,PHP 代码从数据库中获取保存的数据并将其应用于函数过程。
  • 返回响应: PHP 以 HTML 格式将评估结果传递给 Web 服务器。 此外,它同时将新信息存储在 MySQL 数据库中。 Apache HTTP 服务器将动态 HTML 输出传输到用户的浏览器。

LAMP 的替代方案

LAMP 变体或 LAMP 替代方案是一些用于后端开发的技术,它们使用多个组件。 例如,许多 Web 开发人员可能会使用除 Apache 之外的其他 Web 服务器来接受和处理通过前端应用程序的请求。 LAMP 的一些替代方案可能会利用专有组件,例如许可的操作系统。

  • 替代脚本语言
    开发人员可以使用 Python 或 Perl 代替 PHP,而 PHP 是 LAMP 的脚本语言(默认)。
    • Python: 是一种高级语言,用于构建多种类型的软件,例如 Web 应用程序。 在 Web 开发中,开发人员利用 Python,因为它易于理解和简单。
    • Perl: 这种编程语言已经存在了 30 多年。 对于 Web 开发,开发人员利用 Perl,因为它与数据库集成一起运行,并且包含许多支持开发的框架。 这些框架是一些软件工具,其中包括一些经过良好测试的元素,可以激发应用程序开发。

LAMP 堆栈和 MEAN 堆栈

MEAN 代表 MongoDB、Express.js、Angular.js 和 Node.js。 MEAN 是 LAMP 的替代方案,它是在 JavaScript 技术中开发的,其中 JavaScript 是一种用于前端和后端开发的语言。 MEAN 组件的一些重要方面如下:

  • MongoDB 数据库与 JSON 一起工作,JSON 是一种用于读取数据的 JavaScript 类型。
  • js 框架提供了开源工具来开发后端应用程序。
  • js 平台执行 JavaScript 应用程序。
  • js 开源框架用于开发前端应用程序。

LAMP 堆栈与 MEAN 堆栈

LAMP 和 MEAN 是适用于多种类型的 Web 应用程序的良好开源软件堆栈。 在前端,MEAN 堆栈与涉及大量逻辑处理的 Web 应用程序兼容。 此外,LAMP 堆栈适用于管理大量流量的大型复杂网站。 例如,开发人员使用 MEAN 堆栈来构建视频流 Web 应用程序,但选择 LAKP 堆栈用于电子商务 Web 应用程序。

LAMP 的变体

LAMP 堆栈已被其他组件接受,因此通常由开源和免费软件组成。 随着原型 LAMP 的使用增加,出现了用于软件语言、数据库、Web 服务器和操作系统的其他组合的逆向缩写词和变体。

此外,数据库和 Web 服务器管理系统也有所不同。 一种版本,即 LEMP,其中 Apache 已被更精致的 Nginx Web 服务器所取代。 MySQL 已被 PostgreSQL 取代的一种版本称为 LAPP,或者有时通过保留实际的首字母缩写词 LAMP。

LAMP 堆栈可以与多个其他开源和免费软件包合并,例如:

  • Cacti、Collectd 或 Nagios,用于监控。
  • RRDtool 用于图表。
  • Snort,一种 IDS(入侵检测)和 IPS(入侵防御)系统。
  • netsniff-ng 用于安全加固和测试。

在本教程中,我们将在 Ubuntu 上安装 LAMP,此安装过程包括以下步骤。

前提条件

  • Ubuntu
  • 终端

LAMP 安装

1) 安装

打开终端,输入这个简单的命令,它会将完整的 LAMP 堆栈安装到我们的系统中。 如果存在任何软件包,将跳过,但会安装新的软件包。

2) MySQL 配置

在安装过程中,MySQL 会提示配置数据库凭据。 单击确定并继续。

Software LAMP 1

3) 设置密码

MySQL 会提示输入 root 密码。 因此,输入密码并单击确定

Software LAMP 2

4) 确认密码

重复密码以匹配先前输入的密码,然后单击确定

Software LAMP 3

设置密码后,MySQL 会安装其软件包,其余的安装将成功完成。

测试 LAMP

现在,我们将检查是否已成功安装所有软件。

MySQL

打开终端,输入以下命令以登录到 MySQL。


Software LAMP 4

嗯,MySQL 监视器显示,这意味着 MySQL 已成功安装。

Apache

首先启动 Apache,通过输入 localhost 从浏览器访问。 使用此命令启动 Apache。


Software LAMP 5

它表明 Apache 工作正常,并且已成功安装。

PHP

要检查 PHP,请在 /var/www/html 目录中创建一个 info.php 文件。 info.php 文件包含以下代码。

使用 localhost/info.php 从浏览器访问此文件,它将显示以下输出。

Software LAMP 6

嗯,我们已经在我们的系统中成功设置了 LAMP 堆栈。