服务器配置
云服务器用于部署和运行 WordPress 服务。安装和运行该服务之前,需要对服务器进行一些准备。
首先通过跳板机连接到实例,然后下载 WordPress 安装软件包。
1. 升级软件以及内核
sudo dnf update -y
2. 使用以下命令下载并安装这些软件包。
sudo dnf install wget php-mysqlnd httpd php-fpm php-mysqli mariadb105-server php-json php php-devel telnet -y
3. 使用 wget 命令下载最新的 WordPress 安装包。
wget https://wordpress.org/latest.tar.gz
4. 解压并解档安装包。
tar -xzf latest.tar.gz
复制代码
为安装 WordPress 配置数据库以及 web 服务
1. 启动Web 服务器。
sudo systemctl start httpd
2. 以 admin用户身份登录数据库服务器。这里使用我们申请的RDS实例地址。
mysql -u admin –p –h wordpress-db-instance.cu2ogelpj1b2.rds.cn-north-1.amazonaws.com.cn
3. 为 MySQL 数据库创建用户和密码。安装 WordPress 的过程将使用这些值与 MySQL 数据库通信。输入以下命令,以替换唯一的用户名和密码。
CREATE USER 'wordpress-user'@'%' IDENTIFIED BY 'your_strong_password';
4. 创建数据库。为数据库提供一个有意义的描述性名称,例如 wordpress-db
CREATE DATABASE `wordpress-db`;
5. 对之前创建的 WordPress 用户授予数据库的完全访问权限。
GRANT ALL PRIVILEGES ON `wordpress-db`.* TO "wordpress-user"@"%";
6. 刷新数据库权限以接受所有更改。
FLUSH PRIVILEGES;
7. 退出 mysql 客户端。
exit
复制代码
创建和编辑 wp-config.php 文件
WordPress 安装文件夹包含名为 wp-config-sample.php 的示例配置文件。接下来复制此文件进行编辑。
1. 将 wp-config-sample.php 文件复制为一个名为 wp-config.php 的文件。
cp wordpress/wp-config-sample.php wordpress/wp-config.php
2. 编辑 wp-config.php 文件。
vim wordpress/wp-config.php
a. 查找定义 DB_NAME 的行并将 database_name_here 更改为
define ('DB_NAME', 'wordpress-db');
b. 查找定义 DB_USER 的行并将 username_here 更改为
define ('DB_USER', 'wordpress-user');
c. 查找定义 DB_PASSWORD 的行并将 password_here 更改为
define ('DB_PASSWORD', 'your_strong_password');
d. 查找定义 DB_HOST 的行并将 host_here更改为
define ( 'DB_HOST', 'wordpress-db-instance.xxxxxxxxx.rds.cn-north-1.amazonaws.com.cn' );
e. 保存文件并退出文本编辑器
复制代码
将 WordPress 文件安装到 Apache 文档根目录下
当前已解压了安装文件夹、创建了 MySQL 数据库和用户并自定义了 WordPress 配置文件,接下来将安装文件复制到 Web 服务器文档根目录,以便可以运行安装脚本完成安装。
如果希望 WordPress 在文档根目录下运行,需要复制 wordpress 安装目录的内容 (但不包括目录本身)
cp -r wordpress/* /var/www/html/
复制代码
WordPress permalink 需要使用 Apache .htaccess 文件才能正常工作,但默认情况下这些文件在 Amazon Linux 上处于禁用状态。以下过程可允许 Apache 文档根目录中的所有覆盖。
1. 使用文本编辑器vim打开文件。
sudo vim /etc/httpd/conf/httpd.conf
2. 找到以 <Directory "/var/www/html"> 开头的部分。在文本中将 AllowOverride None 行改为读取 AllowOverride All。
3. 保存文件并退出文本编辑器。
复制代码
修改 Apache Web 服务器的文件权限
WordPress 中的某些可用功能要求具有对 Apache 文档根目录的写入权限,需要进行如下配置。
1. 将 /var/www 及其内容的文件所有权授予 apache 用户。
sudo chown -R apache /var/www
2. 将 /var/www 及其内容的组所有权授予 apache 组。
sudo chgrp -R apache /var/www
3. 更改 /var/www 及其子目录的目录权限,以添加组写入权限及设置未来子目录上的组 ID。
sudo chmod 2775 /var/www
find /var/www -type d -exec sudo chmod 2775 {} \;
4. 递归地更改 /var/www 及其子目录的文件权限。
find /var/www -type f -exec sudo chmod 0644 {} \;
复制代码
配置挂载 EFS
登录wordpress实例服务器,使用如下命令安装amazon-efs-utils软件包。
sudo yum install -y amazon-efs-utils
然后可以测试是否可以在该实例挂载成功,使用如下命令进行挂载测试。在home 目录下使用如下命令创建efs文件夹:
mkdir efs
在当前目录进行手动挂载测试:
sudo mount -t efs -o tls fs-07437cd010f664093:/ efs
使用如下命令查看挂载情况:
df –h 或 mount –l
复制代码
使用 df –h 可以看到:
考虑到弹性伸缩服务启动新的实例服务器时,需要在服务器上配置自动挂载。配置步骤如下:
使用 vim 编辑器中打开 /etc/fstab 文件,在最后一行添加如下内容后推出保存
fs-07437cd010f664093:/ /root/efs efs _netdev,noresvport,tls,iam 0 0
复制代码
最后在命令行中使用 mount –a
命令进行挂载测试检验。
完成上述配置后,可以通过堡垒机,访问私有子网实例的 ip:80 端口访问 WordPress。选择简体中文语言,设置相关信息进行 WordPress 安装。安装完成后,即可进行访问。
当前,我们创建好了 MySQL 数据库实例的创建、EFS 文件系统的创建、EC2 实例的创建配置以及 WordPress 的部署测试。
后续章节,
评论