LAMP安装配置WordPress教程
在CentOS或Ubuntu上搭建LAMP环境,安装Apache、MariaDB/MySQL、PHP及扩展,下载WordPress并创建数据库、设置用户密码、调整文件权限,通过浏览器完成安装。最后建议配置虚拟主机、启用HTTPS并加固安全,包括配置防火墙、禁用危险服务、定期更新以增强防护。
搭建WordPress环境,说难不难,说简单其实也有不少细节需要注意。不少人卡在第一步,就是LAMP环境没搭稳当。这篇文章,咱们直接把从零开始到最终上线、再到安全加固的整个流程拆开讲清楚,希望能给你一个完整的实操参考。
一、LAMP环境准备(Linux + Apache + MySQL/MariaDB + PHP)
在安装WordPress之前,先得把LAMP这个“地基”打好。下面分别以CentOS 7/8(Apache 2.4、MariaDB 10.5、PHP 8.0+)和Ubuntu 22.04(Apache 2.4、MySQL 8.0、PHP 8.1+)为例,把核心步骤走一遍。
1. 更新系统软件包
别图省事,第一步先把系统包更新到最新,能避免不少潜在的兼容性问题:
# CentOS
sudo yum update -y
# Ubuntu
sudo apt update && sudo apt upgrade -y
2. 安装Apache Web服务器
Apache作为LAMP体系的前端门户,负责接收并响应所有的HTTP请求:
# CentOS
sudo yum install httpd -y
sudo systemctl start httpd
sudo systemctl enable httpd # 开机自启
# Ubuntu
sudo apt install apache2 -y
sudo systemctl start apache2
sudo systemctl enable apache2
验证安装也很简单:直接在浏览器里访问服务器的IP地址,看到Apache的默认页面,就成了。
3. 安装MySQL/MariaDB数据库
WordPress的所有内容——文章、用户信息、配置参数——都得靠数据库来存。个人推荐用MariaDB,它是MySQL的一个分支,兼容性更好,性能也不差:
# CentOS(MariaDB)
sudo yum install mariadb-server mariadb -y
sudo systemctl start mariadb
sudo systemctl enable mariadb
# Ubuntu(MySQL)
sudo apt install mysql-server mysql-client -y
sudo systemctl start mysql
sudo systemctl enable mysql
数据库装好后,千万别忘了跑一下安全配置脚本。这玩意儿会帮你设置root密码、移除匿名用户、禁止root远程登录——说白了,就是给数据库做一次“扫除”,把一些安全隐患提前排除掉:
# MariaDB/MySQL通用
sudo mysql_secure_installation
按提示一步步操作就行,核心就是设好root密码,其他选项建议都选“是”。
4. 安装PHP及必要扩展
WordPress本身是PHP写的,所以PHP环境是关键中的关键。不光要装PHP核心,还得装上MySQL驱动、GD库、MBstring这些常用扩展,不然后面很容易出问题:
# CentOS
sudo yum install php php-mysqlnd php-gd php-mbstring php-xml php-cli -y
sudo systemctl restart httpd
# Ubuntu
sudo apt install php php-mysql php-gd php-mbstring php-xml php-cli -y
sudo systemctl restart apache2
注:PHP版本至少要在7.4以上,推荐直接用8.0或8.1,否则新版的WordPress可能会报兼容性警告。
二、WordPress安装步骤
1. 下载并解压WordPress
从WordPress官网把最新版拉下来,解压后复制到Apache默认的Web目录(/var/www/html)下:
cd /tmp
wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
sudo cp -a wordpress/. /var/www/html/ # 复制文件到Web目录
sudo rm -rf wordpress latest.tar.gz # 清理临时文件
2. 配置WordPress数据库
WordPress需要一个专属的数据库来记录数据。我们为它创建一个专用库和专用用户——相当于给房子配一把专用钥匙:
# 登录数据库(MariaDB/MySQL通用)
sudo mysql -u root -p
# 创建数据库(如wordpress_db)
CREATE DATABASE wordpress_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
# 创建用户(如wp_user)并设置密码(如StrongPassword123)
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'StrongPassword123';
# 授权用户对数据库的所有权限
GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wp_user'@'localhost';
# 刷新权限使更改生效
FLUSH PRIVILEGES;
# 退出数据库
EXIT;
3. 配置WordPress参数
复制WordPress的配置模板,然后把刚才创建的数据库信息填进去:
cd /var/www/html
sudo cp wp-config-sample.php wp-config.php
sudo nano wp-config.php
找到下面这几行,把对应的值改成你自己的:
define('DB_NAME', 'wordpress_db'); // 数据库名
define('DB_USER', 'wp_user'); // 数据库用户
define('DB_PASSWORD', 'StrongPassword123'); // 数据库密码
define('DB_HOST', 'localhost'); // 数据库主机(本地为localhost)
保存退出即可(快捷键:Ctrl+O → Enter → Ctrl+X)。
4. 设置文件权限
这一步很多人容易忽略,却往往是“403 Forbidden”错误的罪魁祸首。必须确保Apache的运行用户对WordPress目录有读写权限:
# CentOS(Apache用户为apache)
sudo chown -R apache:apache /var/www/html/
# Ubuntu(Apache用户为www-data)
sudo chown -R www-data:www-data /var/www/html/
# 设置目录权限(755为目录,644为文件)
sudo find /var/www/html/ -type d -exec chmod 755 {} \;
sudo find /var/www/html/ -type f -exec chmod 644 {} \;
5. 完成WordPress安装
到这一步,环境就算搭好了。在浏览器里输入服务器IP或域名(比如http://your_server_ip),会进入WordPress的安装向导:
- 选语言(比如中文简体)→ 点击“继续”。
- 填站点标题、管理员账号(比如
admin)、密码和电子邮件 → 点击“安装WordPress”。 - 装完以后,用刚才设置的管理员账号登录后台(
http://your_server_ip/wp-admin),就可以开始折腾了。
三、配置优化与安全加固
基础安装搞定了,但想让站点跑得稳、跑得安全,下面这几步建议也走一遍。
1. 配置Apache虚拟主机(可选,多站点必备)
如果你想绑定域名,或者是同时托管多个站点,就得配虚拟主机:
# CentOS(配置文件路径:/etc/httpd/conf.d/yourdomain.conf)
sudo nano /etc/httpd/conf.d/yourdomain.conf
把下面的内容加进去(记得把yourdomain.com换成你自己的域名):
ServerName yourdomain.com
ServerAlias www.yourdomain.com
DocumentRoot /var/www/html
AllowOverride All # 允许.htaccess覆盖(用于WordPress permalinks)
Require all granted
ErrorLog /var/log/httpd/yourdomain_error.log
CustomLog /var/log/httpd/yourdomain_access.log combined
配完后重启Apache让配置生效:
sudo systemctl restart httpd
2. 启用HTTPS(强制安全连接)
没有HTTPS的站点,现在看起来多少有点“裸奔”的感觉。用Let’s Encrypt提供的免费SSL证书,几分钟就能搞定:
# 安装Certbot(证书管理工具)
sudo yum install epel-release -y # CentOS需先安装EPEL仓库
sudo yum install certbot python3-certbot-apache -y
# 获取并安装证书(自动配置Apache)
sudo certbot --apache -d yourdomain.com -d www.yourdomain.com
按提示操作就行——同意协议、填个邮箱,证书会自动安装并配置HTTP到HTTPS的重定向。
Let’s Encrypt证书有效期只有90天,所以别忘了设置自动续期:
sudo systemctl enable certbot.timer
3. WordPress安全优化
- 加强
wp-config.php:在标签后面加上下面两行,能显著提升安全性:
define('WP_SECURITY_KEY', 'your_random_string_here'); // 随机字符串,可以用WordPress官方API生成 define('DISALLOW_FILE_EDIT', true); // 禁止通过后台编辑主题/插件文件 - 禁用危险函数:打开
php.ini文件,加一行配置,防止恶意代码执行:
disable_functions = exec,passthru,shell_exec,system - 定期备份:要么用UpdraftPlus这类插件,要么自己写脚本定时用
mysqldump备份数据库、用rsync备份文件。数据无价,备份这事千万别偷懒。
四、常见问题排查
- 无法访问WordPress:先检查Apache是否在跑(
sudo systemctl status httpd),再看防火墙有没有放行80和443端口(sudo firewall-cmd --add-service=http --permanent; sudo firewall-cmd --add-service=https --permanent; sudo firewall-cmd --reload)。 - 数据库连接错误:多半是
wp-config.php里数据库信息填错了,或者数据库用户权限没给够。回头确认一下库名、用户名、密码是否完全匹配。 - 页面显示403 Forbidden:文件权限问题,检查一下
chown -R apache:apache /var/www/html/有没有执行,虚拟主机配置里AllowOverride All是不是开着的。
按照上面的步骤一步步走下来,一个功能完整、安全稳固的WordPress站点基本就能跑起来了。说实话,这套流程跑通后,后续的运维和维护都会轻松很多。希望这篇文章能帮到你。
