LEMP 指的是用 PHP 语言编写的网站应用的运行环境。L 表示 Linux,是一种服务器操作系统。E 表示 Nginx, 是一种 Web 服务器,简称 E,是因为它的读音是 Engine X。M 表示 MySQL 或 MariaDB,是一款数据库管理系统。P 表示 PHP,这里指的是 PHP 语言的解释器。
Linux
Linux 是一种操作系统,因为它更安全,更可靠,所以你的网站要运行在安装了 Linux 操作系统的服务器上。它有很多发行版,你可以随便选择一个,比如 CentOS 或 Ubuntu。我们有本手册介绍了 CentOS 这种 Linux 操作系统。宁皓网的服务器用的就是 CentOS 这种操作系统。
Nginx
Nginx 是一种 Web 服务器,你在服务器上安装了这种 Web 服务器软件以后,你的服务器就可以对外提供 Web 服务了。也就是用户可以访问你的服务器,去请求一些资源。如果是静态资源,比如图像,css,js 文件,Nginx 会直接返回给用户,如果用户请求的是 PHP,Nginx 会把请求交给 PHP 处理,处理之后的结果会再交给 Nginx,然后 Nginx 会把最终的结果交给当初发出请求的用户。
MySQL / MariaDB
MySQL 是一种数据库管理系统,它有个社区版叫 MariaDB,你可以任意选择其中的一个。网站上的很多内容要存储在数据库里,比如用户资料,文章,评论等等。程序语言(比如:PHP)通过接口可以把数据放到数据库系统里,也可以从数据库系统里提取数据。
PHP
PHP 在这里指的是 PHP 语言的解释器。在用 PHP 语言写的网站的运行环境里,只有 PHP 解释器懂 PHP 语言。所以 Nginx 遇到对 PHP 文件的请求,就会把请求交给 PHP 解释器。这个解释器与 Nginx 之间需要一个中间人相互沟通,这个中间人叫 PHP-FPM。