Linux, Apache、MySQL 和 PHP 都是开源技术,可用于创建强大的 Web 应用程序。 这些技术共同为当今互联网的很大一部分提供动力。 使用这项技术的最著名项目是 WordPress,但还有更多公司使用 LAMP 堆栈,例如 Wikipedia、Tumblr、Slack 等。
目录
什么是 LAMP 堆栈?
LAMP Stack 是一组用于创建动态网站和基于 Web 的应用程序的开源工具。 首字母缩略词“LAMP”代表Linux, Apache、MySQL 和 PHP。
Linux是操作系统, Apache 是Web服务器,MySQL是关系数据库管理系统(RDBMS),PHP是面向对象的脚本语言。
LAMP Stack 是最流行的 Web 开发平台之一,因为它是免费和开源的。 它也很容易安装和配置。
LAMP 堆栈的组件
Linux 是 LAMP 堆栈的基础。 它是一个免费的开源操作系统,用于服务器、台式机和嵌入式系统。
- Apache 是世界上最流行的网络服务器。 它是用于提供 Web 内容的免费开源软件。
- MySQL 是最流行的开源数据库。 它用于存储网站和应用程序的数据。
- PHP 是一种广泛使用的开源脚本语言。 它用于创建动态 Web 内容和应用程序。
LAMP 堆栈的好处
LAMP Stack 是 Web 开发的热门选择,因为它是免费和开源的。 它也很容易安装和配置。 LAMP Stack 为开发网站和基于 Web 的应用程序提供了一个稳定、安全和可扩展的平台。
安装 LAMP 堆栈
有多种方法可以安装 LAMP 堆栈,也许启动和运行 LAMP 安装的最快方法是在 Linux 终端中使用 Tasksel 命令。
如果您已经安装了 Ubuntu,请按照以下详细步骤操作,
使用 Tasksel 安装 LAMP
在我们继续安装 Tasksel 之前,
让我们使用 apt update 命令检查所有包是否都是最新的,如下所示:
sudo apt update
现在,让我们安装 Tasksel 命令,
sudo apt install tasksel
现在我们可以使用 Tasksel 安装 Lamp Sever,
sudo tasksel install lamp-server

使用 Apt Install 安装 LAMP
或者,您可以绕过 tasksel 并使用 apt install 直接安装 Lamp Server,
sudo apt install lamp-server^

现在让我们验证安装,

检查版本 Apache 服务器安装,
apache2 -v
要检查 PHP 安装的版本,
php -v
检查Mysql数据库安装的版本,
sudo mysql -V
手动安装 LAMP 堆栈的每个模块
以上几种方法适用于大多数 LAMP 堆栈的用户,尤其是初学者。 但是,大多数专业人员在安装过程中都需要可定制性。 因此,这是手动安装 LAMP 堆栈非常有用的地方。
首先我们开始安装 Apache 网络服务器,
sudo apt install apache2 -y

接下来,安装Mysql
在这里,我们将安装 LAMP 堆栈所需的数据库,
apt install mysql-server -y

注意 – Ubuntu 不再将 MySQL 作为其 apt 存储库中的默认数据库。 它已被称为 maria DB 服务器的 MySQL 社区版本所取代。
如果上述命令对您不起作用,请按照以下步骤安装 maria DB 服务器,
更新 apt 存储库,
sudo apt update

让我们使用升级命令一次升级所有挂起的更新,
sudo apt upgrade

让我们安装 Maria DB 服务器,
sudo apt install mariadb-server

默认情况下,MariaDB 安装时没有任何密码,让我们使用用户名和密码来保护数据库,
sudo mysql_secure_installation
请通过此屏幕截图快速更改默认密码,

root 用户是 MariaDB 安装的默认用户。 root 用户对所有数据库具有完全访问权限,可以执行任何操作。
默认情况下,MariaDB 安装有一个匿名用户,允许任何人登录 MariaDB 而无需为他们创建用户帐户。 这仅用于测试,应在进入生产环境之前删除。
只应允许 Root 从“localhost”连接。 这可确保有人无法从网络中猜出 root 密码。
默认情况下,MariaDB 带有一个任何人都可以访问的名为“test”的数据库。 这也仅用于测试,应在进入生产环境之前将其删除。
现在让我们通过访问数据库来检查数据库是否安装成功,
sudo mysql

现在,让我们通过键入以下参数退出数据库服务器,
MariaDB [(none)]> exit
安装PHP
到目前为止,我们已经安装了 apache 服务器来提供 Web 内容,并安装了 mariadb/mysql 来与数据存储进行交互。 我们需要为整个堆栈的前端安装 PHP。 由于我们访问任何网站时显示的页面都是由服务器端用 PHP 编写的脚本呈现的。
以下是安装 PHP 的代码,
sudo apt install php libapache2-mod-php php-mysql

让我们验证PHP是否已成功安装,

现在我们已经安装了 LAMP 堆栈的所有组件。 在我们的服务器开始为网站提供服务之前,我们还需要进行一些其他维护工作。
使用防火墙
Uncomplicated Firewall (UFW) 是一个用户友好的前端,用于管理 iptables 防火墙规则。 它提供了一个命令行界面,旨在简单易用。
UFW 支持多种配置文件:
- default – 这是默认配置文件。 它允许所有传入连接并阻止所有传出连接。
- allow – 此配置文件允许所有传入和传出连接。
- deny – 此配置文件阻止所有传入和传出连接。
- limit – 此配置文件限制传入连接并允许所有传出连接。

UFW 中有四个配置文件:
- Apache:此配置文件允许端口 80 (HTTP) 上的流量
- Apache 满的:此配置文件允许端口 80 (HTTP) 和端口 443 (HTTPS) 上的流量
- Apache 安全的:此配置文件仅允许端口 443 (HTTPS) 上的流量
- 打开SSH:此配置文件仅允许端口 22 (SSH) 上的流量
UFW 默认是禁用的,

我想允许端口 80 和端口 443 上的流量,所以我将选择允许我执行的配置文件 Apache 满的。
所以我们需要执行的命令是:
sudo ufw allow in "Apache Full"

最后,让我们检查本地主机是否已启动并正在运行
在您的浏览器地址栏中,输入,
https://localhost/
这是您在 URL 中输入本地主机时应该看到的内容。

概括
LAMP 堆栈是 Web 开发的流行选择,因为它是免费和开源的。 它也很容易安装和配置。 LAMP Stack 为开发网站和基于 Web 的应用程序提供了一个稳定、安全和可扩展的平台。