一、准备工作:AWS账户与EC2实例创建
在开始搭建WordPress之前,您需要完成以下准备工作:
注册AWS账户:访问AWS官网注册账号,新用户通常可享受12个月的免费套餐(需注意免费资源限额)
创建EC2实例:
- 登录AWS控制台,进入EC2服务
- 点击”启动实例”,选择适合的AMI(推荐选择Amazon Linux 2)
- 选择实例类型(免费套餐用户可选t2.micro)
- 配置安全组,至少开放80(HTTP)、443(HTTPS)和22(SSH)端口
- 创建并下载密钥对(.pem文件),用于SSH连接
- 分配弹性IP(可选但推荐):
- 在EC2控制台的”弹性IP”部分申请新地址
- 将其关联到您的实例,避免实例重启后公网IP变化
二、服务器环境配置:LAMP环境搭建
通过SSH连接到您的EC2实例后,执行以下命令安装必要组件:
# 更新系统软件包
sudo yum update -y
# 安装Apache Web服务器
sudo yum install httpd -y
sudo systemctl start httpd
sudo systemctl enable httpd
# 安装PHP及常用扩展
sudo amazon-linux-extras install php7.4 -y
sudo yum install php-mysqlnd php-gd php-xml php-mbstring -y
# 安装MariaDB数据库
sudo yum install mariadb-server -y
sudo systemctl start mariadb
sudo systemctl enable mariadb
# 运行MySQL安全配置
sudo mysql_secure_installation
三、数据库创建与WordPress安装
- 创建WordPress专用数据库:
CREATE DATABASE wordpress;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY '你的强密码';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
- 下载并配置WordPress:
cd /var/www/html
sudo wget https://wordpress.org/latest.tar.gz
sudo tar -xzvf latest.tar.gz
sudo mv wordpress/* .
sudo rm -rf wordpress latest.tar.gz
# 设置权限
sudo chown -R apache:apache /var/www/html
sudo chmod -R 755 /var/www/html
- 配置wp-config.php:
sudo cp wp-config-sample.php wp-config.php
sudo nano wp-config.php
修改以下配置项:
define('DB_NAME', 'wordpress');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', '你的密码');
define('DB_HOST', 'localhost');
四、完成安装与基础优化
- 通过浏览器完成安装:
- 在浏览器输入您的EC2公有IP地址
- 按照WordPress安装向导完成最后配置
- 基础安全优化:
# 限制wp-config.php访问权限
sudo chmod 600 /var/www/html/wp-config.php
# 安装Fail2Ban防止暴力破解
sudo yum install fail2ban -y
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
- 配置HTTPS(推荐):
- 在AWS Certificate Manager申请免费SSL证书
- 配置Apache虚拟主机启用HTTPS
- 设置HTTP自动跳转HTTPS
五、日常维护建议
- 自动化备份方案:
- 使用AWS Backup服务定期备份EC2实例
- 配置数据库定期导出
- 考虑使用WordPress备份插件
- 性能优化:
- 安装缓存插件如WP Super Cache
- 考虑使用Amazon RDS替代本地数据库
- 启用CloudFront CDN加速
- 监控与告警:
- 配置CloudWatch监控实例状态
- 设置预算告警避免意外费用
通过以上步骤,您已在AWS上成功搭建了一个WordPress网站。后续可以根据需求进一步扩展功能或优化性能,如添加多站点支持、实现自动扩展等高级配置。