LNMP 平台应用部署笔记b
一、LNMP 平台简介
LNMP 代表:
- Linux: 操作系统
- Nginx: Web 服务器 / 反向代理服务器
- MySQL: 数据库服务器
- PHP: 后端编程语言
工作原理:
Nginx 本身不能处理 PHP 等动态语言。当用户请求一个
.php 页面时,Nginx 会通过 fastCGI 协议将请求转发给 PHP-FPM (FastCGI Process Manager) 进程进行处理。PHP-FPM 处理完脚本后,将结果返回给 Nginx,再由 Nginx 发送给用户浏览器。MySQL 则作为应用程序的数据存储。二、LNMP 平台安装与配置
1. 安装 Nginx
2. 安装 MySQL
3. 安装 PHP 7.4
关键点:
php-fpm是与 Nginx 通信的服务,必须启动。
- 安装的扩展:
php-mysqlnd: MySQL 原生驱动,用于连接数据库。php-gd: 图像处理,WordPress 缩略图等功能需要。php-mbstring: 多字节字符串处理,对中文等语言很重要。php-xml: XML 处理,许多 CMS 都需要。php-json:JSON 支持php-sodium:加密支持
三、LNMP 平台测试
1. 测试 Nginx 调用 PHP
- 创建测试 PHP 文件 (例如:
/usr/share/nginx/html/test.php)
- 访问测试:在浏览器中打开
http://<服务器IP>/test.php
- 预期结果:应能看到 HTML 标题和
phpinfo()函数输出的详细 PHP 配置信息页面。
2. 测试 PHP 连接 MySQL 数据库
- 创建数据库连接测试文件 (例如:
/usr/share/nginx/html/dbtest.php)
- 访问测试:在浏览器中打开
http://<服务器IP>/dbtest.php
- 预期结果:如果数据库配置正确,应显示绿色的“连接成功!”。
四、部署 WordPress 博客
1. 准备 WordPress 代码
2. 配置 Nginx 虚拟主机
- 编辑 Nginx 配置文件,通常在
/etc/nginx/conf.d/目录下创建一个新文件,如blog.conf。
- 添加以下服务器块配置:
- 检查配置并重载 Nginx
3. 配置 MySQL 数据库
- 登录 MySQL 并为 WordPress 创建数据库和用户。
4. 完成 WordPress 安装
- 在浏览器中访问你的服务器域名或 IP 地址 (
http://your_domain.com)。
- 你将看到 WordPress 的著名 “五分钟安装” 页面。
- 填写数据库信息:
- 数据库名:
blog - 用户名:
buser - 密码:
WWW.1.com - 数据库主机:
localhost(如果 MySQL 在本机) - 表前缀:
wp_(默认即可,修改可增强安全性)
- 点击“提交”,然后运行安装。
- 最后设置网站标题、管理员用户名、密码和邮箱,WordPress 就安装完成了。
五、常见问题与排查 (Troubleshooting)
- 访问 PHP 文件直接下载而不是执行:
- 原因:Nginx 未正确配置处理 PHP。
- 解决:检查
location ~ \\.php$块配置,确保fastcgi_pass指向正确的 PHP-FPM 地址(通常是127.0.0.1:9000或 unix socket),并确认SCRIPT_FILENAME参数正确。
- 502 Bad Gateway 错误:
- 原因:Nginx 无法连接到 PHP-FPM。
- 解决:确认
php-fpm服务正在运行 (systemctl status php-fpm)。检查fastcgi_pass的地址和端口是否与 PHP-FPM 配置文件 (/etc/php-fpm.d/www.conf) 中的listen设置一致。
- 文件权限问题 (WordPress 无法安装主题/插件或更新):
- 原因:Web 服务器用户(如
nginx)对/web/blog目录没有写权限。 - 解决:使用
chown -R nginx:nginx /web/blog和chmod -R 755 /web/blog修正权限。wp-content目录通常需要 755 或 775 权限。
- 无法连接数据库:
- 原因:数据库用户名、密码、数据库名错误,或 MySQL 未运行。
- 解决:仔细检查
wp-config.php文件中的配置信息。确认 MySQL 服务已启动。
附:实用命令
🔎 为什么 WordPress 的 HTTP 会一直重定向到 HTTPS?Loading...