目录
零. 简介
一. 部署
二. 安装 Nginx
三. 安装MySQL
四. 安装PHP
五. 配置网站目录
六. 测试环境
零. 简介
LNMP 是指 Linux + Nginx + MySQL + PHP 这一组合架构,用于部署动态网站环境。
Linux 作为操作系统,提供了稳定、安全和高效的基础平台。
Nginx 是一款轻量级的高性能 Web 服务器和反向代理服务器。它具有处理高并发连接、低内存消耗和高效的负载均衡能力,能够快速地响应客户端请求,提升网站的访问速度和性能。
MySQL 是一种流行的关系型数据库管理系统,用于存储网站的各种数据,如用户信息、文章内容等。
PHP 是一种广泛使用的服务器端脚本语言,用于处理动态网页内容的生成和逻辑处理。它能够与 MySQL 数据库进行交互,实现数据的读取、写入和操作,从而为用户提供动态的网页内容。
总的来说,LNMP 架构具有高效、稳定、灵活和易于扩展的特点,能够满足各种规模的动态网站的部署需求
一. 部署
以下是 LNMP 架构部署动态网站环境的一般步骤:
准备服务器
- 选择适合的 Linux 发行版,如 CentOS、Ubuntu 等。
- 确保服务器具有足够的硬件资源,如内存、硬盘空间等。
安装 Nginx
- 使用包管理工具(如 yum 或 apt-get )安装 Nginx 。
- 配置 Nginx 服务器,包括设置虚拟主机、监听端口等。
安装 MySQL
- 下载并安装 MySQL 服务器。
- 进行安全设置,如设置 root 密码、限制远程访问等。
安装 PHP
- 安装 PHP 及其相关扩展,如 PHP-FPM 。
- 配置 PHP 与 Nginx 的集成,例如在 Nginx 配置文件中指定 PHP 处理程序。
配置网站目录
- 在 Nginx 配置中指定网站的根目录。
- 设置文件权限,确保 Nginx 和 PHP 进程有足够的权限访问网站文件。
测试环境
- 创建一个简单的 PHP 测试文件,如
info.php
,包含<?php phpinfo();?>
,通过浏览器访问该文件以验证 LNMP 环境是否正常工作。部署网站
- 将您的动态网站代码上传到服务器的指定目录。
优化和监控
- 根据实际需求优化 Nginx、MySQL 和 PHP 的配置参数。
- 安装监控工具,实时监测服务器的性能和资源使用情况。
需要注意的是,在实际部署过程中,可能会遇到各种问题,需要根据具体情况进行排查和解决。同时,确保及时更新软件版本以修复安全漏洞。
二. 安装 Nginx
以下是在 Ubuntu 系统上安装 Nginx 的步骤:
- 更新软件包列表
sudo apt update
- 安装 Nginx
sudo apt install nginx
- 安装完成后,检查 Nginx 服务状态
sudo systemctl status nginx
- 如果服务正在运行,您可以通过浏览器访问服务器的公网 IP 地址,应该能够看到 Nginx 的默认欢迎页面。
如果您希望对 Nginx 进行进一步的配置,可以通过修改 /etc/nginx/
目录下的相关配置文件来实现。
更改端口
Nginx 默认使用 80 端口。但有时可能需要更改端口,具体步骤如下:
Nginx 的配置文件在 /etc/nginx
目录下的 nginx.conf
。在 nginx.conf->http
选项末尾有引入两个目录下的文件,分别为:
http {
# 省略部分内容
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
查看 /etc/nginx/sites-enabled/
目录,会找到一个 default
文件,在 server
选项下前两行就可以找到使用的 80 端口号:
server {
listen 80 default_server;
listen (::):80 default_server;
}
将 80 端口号改为你想使用的端口号,保存文件。如果 Nginx 没有启动,启动即可;如果 Nginx 已经在运行,重新加载即可。
重新加载 Nginx 配置的命令为:sudo nginx -s reload
请注意,如果启用了防火墙,则需开启对应端口;使用云服务器时可能需要更改服务器安全组,添加相应入站规则,开启对应端口。另外,不同版本的 Nginx 和系统配置文件可能略有差异。
要查看 Nginx 运行的端口,可以使用以下命令:sudo netstat -anp | grep nginx
三. 安装MySQL
也可以参考上一篇安装的 MariaDB 数据库
四. 安装PHP
在 Ubuntu 系统中安装 PHP 可以通过以下命令完成:
- 更新软件包列表:
sudo apt update
- 安装 PHP:
sudo apt install php
这将安装 PHP 的基本版本。如果您需要特定的 PHP 版本或扩展,可以进一步指定。
例如,如果您想安装 PHP 7.4 以及一些常见扩展,您可以使用以下命令:
sudo apt install php7.4 php7.4-fpm php7.4-mysql php7.4-curl php7.4-gd php7.4-intl php7.4-mbstring php7.4-opcache php7.4-xml php7.4-zip
安装完成后,您可以通过创建一个简单的 PHP 文件来测试 PHP 是否安装成功。例如,创建一个名为 info.php
的文件,内容为 <?php phpinfo();?>
,然后在浏览器中访问该文件,查看 PHP 相关信息。
五. 配置网站目录
在 Nginx 中配置网站目录,您可以按照以下步骤进行操作:
- 找到 Nginx 的配置文件:通常位于
/etc/nginx/sites-available/default
。 - 打开配置文件,在
server
块中找到或添加以下内容来指定网站根目录:
root /var/www/html/your_website; # 将 `/var/www/html/your_website` 替换为您实际的网站目录路径
index index.html index.htm index.php; # 指定默认的索引文件
保存配置文件。
检查配置文件是否正确:
sudo nginx -t
如果配置正确,将会显示 successful
等成功的提示信息。
- 重新加载 Nginx 配置以使更改生效:
sudo nginx -s reload
这样就完成了网站目录的配置。请注意,具体的目录路径和文件名可能因您的系统设置和需求而有所不同。
六. 测试环境
在 LNMP 环境部署完成后,测试环境可以通过以下几个方面进行:
-
网站访问测试
- 在浏览器中输入服务器的 IP 地址或域名,检查是否能够正常显示 Nginx 的默认页面或您配置的网站首页。
-
PHP 脚本测试
- 创建一个简单的 PHP 测试文件,例如
test.php
,内容如下:
- 创建一个简单的 PHP 测试文件,例如
<?php
phpinfo();
?>
- 将该文件放置在网站目录中,通过浏览器访问,检查是否能够正确显示 PHP 的相关信息,以确认 PHP 环境正常。
ps: 需要安装php-fpm
sudo apt install php-fpm
数据库连接测试
- 如果您的网站涉及数据库操作,创建一个简单的 PHP 脚本连接数据库并进行简单的查询操作,例如:
- ps: 需要启用了 mysqli 扩展
<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database_name";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: ". $conn->connect_error);
}
echo "连接成功";
$conn->close();
?>
- 将上述代码中的数据库相关信息替换为您实际的配置,通过浏览器访问该文件,检查是否能够成功连接数据库。
-
性能测试
- 可以使用一些工具如
ab
(Apache Bench)来对网站进行压力测试,查看在高并发情况下网站的响应性能和稳定性。
- 可以使用一些工具如
-
错误日志检查
- 查看 Nginx、PHP 和 MySQL 的错误日志,检查是否有异常错误信息。
通过以上多方面的测试,可以较为全面地了解 LNMP 环境的运行状况,确保其能够满足网站的正常运行需求。
效果图: