前言
该指南将帮助您利用安装在 Amazon EC2 虚拟机(也称为“实例”)上的 WordPress 来启动和运行网站。
*注意:本指南仅会指导构建基本的 WordPress 网站架构,供个人使用或学习,不建议使用本教程来构建需要高度可扩展性的企业级网站。
*注意!!:使用公网 ip 或 dns 通过 http 访问配置完成的网站需要开放实例的 80 端口,在亚马逊云科技中国区必须完成 ICP 备案才能开放端口,请参考 ICP 备案的流程。
关于本教程 | |
预计部署时间 | 10分钟 |
费用 | 免费套餐 |
受众 | 全栈开发人员 开发运维工程师 系统管理员 |
级别 | 初级 |
相关产品 | Amazon EC2 |
相关行业 | 通用 |
上次更新时间 | 2021年7月 |
首先启动 Amazon EC2 实例
从所有服务中的 (Compute) 计算下找到 EC2,点击打开 EC2 控制面板。
![](https://s3.cn-north-1.amazonaws.com.cn/aws-dam-prod/%e9%80%9a%e8%bf%87%20Amazon%20EC2%e5%90%af%e5%8a%a8%20WordPress%20%e7%bd%91%e7%ab%99%20(1).f40acb3d6e7f472afdcd9f3eceaeb315ba3569e4.png)
b. 在本教程中,我们会使用 t2.micro 实例。选中 Type(类型)列中的 t2.micro(应该是第一个),然后单击 Next: Configure Instance Details(下一步:配置实例详细信息)。
c. 详细配置中,将下方脚本代码粘贴到用户数据中,实例将会在启动时运行脚本配置安装 wordpress,其他不做任何更改,单击 Next: Add Storage(下一步:添加存储),在接下来显示的屏幕中,继续单击 Next: Tag Instance(下一步:标记实例)。
#!/bin/bash
yum update -y
amazon-linux-extras install -y lamp-mariadb10.2-php7.2 php7.2
yum install -y httpd mariadb-server php-gd
systemctl start httpd
systemctl enable httpd
usermod -a -G apache ec2-user
chown -R ec2-user:apache /var/www
chgrp -R apache /var/www
chmod 2775 /var/www
find /var/www -type d -exec chmod 2775 {} \;
find /var/www -type f -exec chmod 0664 {} \;
echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php
wget -P /home/ec2-user/ https://wordpress.org/latest.tar.gz
tar -xzf /home/ec2-user/latest.tar.gz -C /home/ec2-user/
systemctl start mariadb
systemctl enable mariadb
echo "CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';" >> init.sql
echo "CREATE DATABASE \`wordpress\`;" >> init.sql
echo "GRANT ALL PRIVILEGES ON \`wordpress\`.* TO \"username\"@\"localhost\";" >> init.sql
echo "FLUSH PRIVILEGES;" >> init.sql
mysql -u root < init.sql
cp /home/ec2-user/wordpress/wp-config-sample.php /home/ec2-user/wordpress/wp-config.php
sed -i '23s/database_name_here/wordpress/g' /home/ec2-user/wordpress/wp-config.php
sed -i '26s/username_here/username/g' /home/ec2-user/wordpress/wp-config.php
sed -i '29s/password_here/password/g' /home/ec2-user/wordpress/wp-config.php
cp -r /home/ec2-user/wordpress/* /var/www/html/
sed -i '151s/AllowOverride None/AllowOverride All/g' /etc/httpd/conf/httpd.conf
d. 在这一步中,我们会为实例设置名称。在 Key(键)框中输入Name(名称),在 Value(值)框中输入 WordPress。单击 Configure Security Group(配置安全组)继续。
e. 选择创建新的安全组并且点击 Add Rule(添加规则),选择 http 类型保证网站允许 http 连接访问, 点击右下角的 Review and Launch(审核和启动)继续
g. 接下来显示的弹窗是关于密钥对。密钥对是通过终端程序,使用 Secure Shell (SSH) 连接至 Amazon EC2 实例的方式。选择下拉菜单中的 Proceed without a key pair(不使用密钥对并继续),并勾选下方声明,确认您知道在没有使用密钥对的情况下,此 Amazon EC2 实例将不能通过 SSH 方式访问。
单击 Launch Instances(启动新实例)来启动您的实例。请注意,启动实例可能需要几分钟时间。
注意:要直接连接实例,您需要创建一个新密钥对,并重新创建新的 EC2 实例以绑定该密钥对,或者在创建新实例进行到此步骤时选择创建新密钥对。关于创建密钥对和连接实例的说明,请参考教程:启动 Linux 虚拟机的步骤 2 d.-2 f. 和步骤 3。
h.返回实例列表并选择 WordPress 实例,等待 Instance State(实例状态)显示 running(正在运行)。如果实例状态显示 launching(正在启动),表示亚马逊云科技仍在准备 WordPress 实例。
i. 点击公有 IPv4 地址或者公有 IPv4DNS 旁边的打开地址,浏览器可以访问到 WordPress 安装脚本,如果出现无法访问,注意把地址栏内的 https 改为 http 即可,所有初始化操作需要半分钟左右,请在实例启动后稍等片刻。提供 WordPress 安装所需的信息。点击安装 WordPress(Install WordPress) 完成安装。有关更多信息,请参阅 WordPress 网站上的步骤 5:运行安装脚本。(注意:实现此步骤需要 ICP 备案以开放实例的 80 端口进行 http 连接)
参考教程
现在就开始在亚马逊云上构建
无论您是在寻找计算能力、数据库、存储、内容分发、人工智能与机器学习,大数据分析还是其他功能,亚马逊云科技都有相应的服务来帮助您建立具有更高灵活性、可扩展性和可靠性的复杂应用。