项目实战:LAMP 博客平台 WordPress 部署全攻略

项目实战:LAMP 博客平台 WordPress 部署全攻略

项目简介 :WordPress 是全球最流行的开源博客平台,基于 PHP + MySQL 开发,拥有丰富的主题和插件生态。本文将带你使用 LAMP 架构(Linux + Apache + MariaDB + PHP)在 CentOS 7 上快速部署 WordPress。


一、节点规划与基础环境

1.1 节点规划

节点名称 节点 IP 节点功能
wordpress 10.1.8.10/24 LAMP 服务器(Apache + MariaDB + PHP)

1.2 基础配置

bash

bash 复制代码
# 设置主机名
hostnamectl set-hostname wordpress

# 配置静态 IP
nmcli connection modify ens33 ipv4.method manual \
    ipv4.addresses 10.1.8.10/24 \
    ipv4.gateway 10.1.8.2 \
    ipv4.dns 10.1.8.2 \
    autoconnect yes

# 重启网卡
nmcli connection up ens33

二、部署 LAMP 环境

2.1 一键安装所有组件

bash

bash 复制代码
# 添加 EPEL 源
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

# 一次性安装所有组件
yum install -y \
    mariadb-server \
    mariadb \
    php \
    php-fpm \
    php-mysqlnd \
    php-gd \
    php-mbstring \
    php-xml \
    httpd

各组件作用一览

组件 作用
httpd Apache Web 服务器
mariadb-server MariaDB 数据库服务端
php PHP 解释器
php-fpm PHP FastCGI 进程管理器
php-mysqlnd PHP 连接 MySQL 的驱动
php-gd 图像处理(缩略图、验证码)
php-mbstring 多字节字符支持(中文)
php-xml XML 解析支持

2.2 启动所有服务

bash

bash 复制代码
# 启动并设置开机自启
systemctl enable mariadb --now
systemctl enable php-fpm --now
systemctl enable httpd --now

# 检查服务状态
systemctl status mariadb php-fpm httpd

三、安全初始化 MariaDB

bash

bash 复制代码
mysql_secure_installation

操作流程与 ECshop 项目一致:

交互提示 推荐操作
当前 root 密码 直接回车(初始为空)
设置 root 密码 y → 输入 huawei
删除匿名用户 y
禁止 root 远程登录 n(项目环境)
删除 test 数据库 y
刷新权限 y

四、创建 WordPress 数据库

bash

bash 复制代码
mysql -uroot -phuawei

执行以下 SQL:

sql

复制代码
-- 创建博客数据库
CREATE DATABASE wordpress;

-- 创建专用账号(仅允许本地登录)
CREATE USER wordpress@localhost IDENTIFIED BY 'huawei';

-- 授予全部权限
GRANT ALL PRIVILEGES ON wordpress.* TO wordpress@localhost;

-- 刷新权限
FLUSH PRIVILEGES;

-- 退出
EXIT;

五、部署 WordPress 源码

5.1 上传并解压

wordpress-4.9.4-zh_CN.zip 上传到 /root/ 目录:

bash

bash 复制代码
# 解压
unzip wordpress-4.9.4-zh_CN.zip

# 复制到 Apache 默认站点目录
cp -aR wordpress /var/www/html/

# 设置属主为 Apache 运行用户
chown -R apache:apache /var/www/html/wordpress/

# 设置目录权限(755 确保 Apache 可读写)
chmod -R 755 /var/www/html/wordpress/

# 重启 Apache
systemctl restart httpd

5.2 手动配置 wp-config.php(推荐方式)

WordPress 安装过程需要写入 wp-config.php 文件,如果 Web 环境权限不足,可以手动创建:

bash

bash 复制代码
cd /var/www/html/wordpress/

# 复制示例配置文件
cp wp-config-sample.php wp-config.php

# 编辑配置文件
vim wp-config.php

修改以下四个核心参数:

php

复制代码
// 数据库名称
define('DB_NAME', 'wordpress');

// 数据库用户名
define('DB_USER', 'wordpress');

// 数据库密码
define('DB_PASSWORD', 'huawei');

// 数据库主机(本地用 localhost)
define('DB_HOST', 'localhost');

// 数据表前缀(多个博客共用数据库时可区分)
$table_prefix = 'wp_';

六、WordPress Web 安装

6.1 访问安装页面

浏览器访问:http://www.wzh.cloud/wordpress/

如果域名未解析,修改本地 hosts 文件:

text

复制代码
10.1.8.10 www.wzh.cloud

6.2 填写站点信息

配置项 填写内容 说明
站点标题 我的个人博客 博客名称
用户名 admin 管理员账号
密码 自定义(如 admin123 建议使用强密码
您的电子邮件 your@email.com 管理员邮箱
搜索引擎可见性 建议保持默认 正式上线后再取消勾选

点击 "安装 WordPress" 按钮。

6.3 安装成功

安装完成后,系统会显示成功页面,点击 "登录" 进入管理后台。


七、访问 WordPress

7.1 前台首页

访问:http://www.wzh.cloud/wordpress/

可以看到默认主题的博客首页。

7.2 管理后台

访问:http://www.wzh.cloud/wordpress/wp-admin/

使用刚创建的管理员账号登录:

  • 用户名:admin
  • 密码:admin123

登录后即可看到 WordPress 仪表盘,可进行:

  • 撰写文章
  • 更换主题
  • 安装插件
  • 管理评论
  • 用户管理

八、常见问题排错

问题 可能原因 解决方法
访问页面显示空白 PHP 错误被隐藏 修改 /etc/php.inidisplay_errors = On,重启 PHP-FPM
数据库连接错误 账号/密码配置错误 检查 wp-config.php 中的 DB 信息
无法写入 wp-config.php 目录权限不足 chown -R apache:apache /var/www/html/wordpress/ && chmod -R 755
提示"建立数据库连接时出错" MariaDB 未启动 systemctl start mariadb
主题/插件无法安装 目录权限不足 chmod -R 755 /var/www/html/wordpress/wp-content/
固定链接(Permalink)404 Apache 未开启重写 检查 httpd.confAllowOverride All 并确保 mod_rewrite 已加载

九、项目总结

通过本次实战,你已完成:

序号 技能点 状态
1 CentOS 7 基础网络配置
2 LAMP 环境完整搭建(Apache + MariaDB + PHP)
3 MariaDB 安全初始化与专用账号创建
4 WordPress 源码部署与权限设置
5 手动/自动配置 wp-config.php
6 Web 安装完成并访问后台

十、扩展与进阶

10.1 使用域名访问

在生产环境中,建议绑定真实域名:

  1. 修改 wp-config.php 中的 WP_HOMEWP_SITEURL
  2. 在 Apache 配置中设置 ServerName

10.2 启用 HTTPS

使用 Let's Encrypt 免费证书:

bash

bash 复制代码
yum install -y certbot python2-certbot-apache
certbot --apache -d www.yourdomain.com

10.3 开启缓存加速

安装 WordPress 缓存插件(如 W3 Total Cache、WP Super Cache),或配置 Redis 对象缓存。


对比总结

对比项 ECshop(LNMP) WordPress(LAMP)
Web 服务器 Nginx Apache(httpd)
架构简称 LNMP LAMP
PHP 通信方式 Nginx → PHP-FPM(9000 端口) Apache 内置 mod_php 或 PHP-FPM
适用场景 电商商城 博客/企业网站

两个项目覆盖了 LNMP 和 LAMP 两大主流 PHP 架构,是 PHP 运维开发的基础实战!

相关推荐
九硕智慧建筑一体化厂家1 小时前
打破系统孤岛!IBMS 一体化平台,构建智慧楼宇全域管控体系
运维·网络·人工智能·笔记·智慧城市
杨云龙UP1 小时前
Oracle ASH 报告详解:与 AWR 的区别、使用场景及生成方法
linux·运维·服务器·数据库·oracle
琥珀色糖2 小时前
Linux makefile
linux·运维·服务器·makefile·make
Elastic 中国社区官方博客2 小时前
用两行 JSON 替换你的 ILM 策略:数据流生命周期新增冻结层支持
大数据·运维·elasticsearch·搜索引擎·架构·全文检索
小趴菜一只2 小时前
linux权限维持
linux·运维·服务器
小张同学a.2 小时前
ELK企业级日志分析平台3——ES数据备份 & 集群监控 & ELFK+Kafka 架构部署
linux·运维·elk·elasticsearch·架构·kafka·filebeat
神龙斗士2402 小时前
Socket编程:客户端与服务器通信全解析(网络编程)
运维·服务器·网络·socket
中才实用2 小时前
Jenkins自动化部署
运维·自动化·jenkins
snow@li2 小时前
Kibana:功能全景梳理/Elastic Stack可视化管理平台
运维