一般搭建一个web服务器和数据库分离的wordpress环境需要3-4小时,而使用aws elastic beanstalk搭建wordpress环境(ec2 + rds)不需1个小时,竟是如此简单。想自己创建ec2及rds后搭建wordpress环境,参照以下博客。

下面介绍一下使用aws elastic beanstalk搭建wordpress环境的步骤。

elastic beanstalk搭建wordpress环境

下载wordpress

在aws开始搭建wordpress环境之前首先下载wordpress,目前的最新版本是wordpress4.2。

  • wordpress官网:http://cn.wordpress.org/

创建application

登录aws管理界面之后点击[elastic beanstalk]。

在elastic beanstalk页面点击[create new application]。

  1. application name:beanstalk wordpress
  2. descriptioan:beanstalk test
  3. 点击:[next]

点击[create web server]

  1. 选择[create an iam role and instance profile.]
  2. 点击[next]

wordpress需要php环境的支持因此选择php,environment type也可选择[load blancing,auto scaling]但是在这里选择[single instance]。

  1. predefined configuration: php
  2. environment type: single instance
  3. 点击[next]

点击[upload your own]的[参照]把下载的wordpress文件上传之后,点击[next]。

点击[check availability]确认可用之后,点击[next]。

  1. 选择[create an rds db instance with this environment]
  2. 选择[create this environment inside a vpc]
  3. 点击[next]

基本上使用默认信息,在这里只选择以下部分。

  1. instance type:t1.mirco
  2. ec2 key pair:foraws
  3. 点击[next]

不填写标签直接点击[next]。

  1. db engine:mysql
  2. instance class:db.t1.mirco
  3. username:wpadmin
  4. passowrd:密码
  5. 点击[next]

选择vpc及运行ec2,rds的subnet之后点击[next]。

确认设定内容之后点击[launch]。

等待10多分钟之后显示如下画面,就表示成功创建环境了。

修改document root

但是当访问http://beanstalkwordpress-env.elasticbeanstalk.com/时会报如下错误。

forbiddenyou don't have permission to access / on this server.

这时我们需要修改一下document root。

  1. 点击左侧栏的[configuration]
  2. 点击[software configuration]右侧的图标

  1. document root:/wordpress
  2. 点击[save]

安装wordpress

访问http://beanstalkwordpress-env.elasticbeanstalk.com/,可以开始配置wordpress了。

  1. 数据库名:ebdb
  2. 用户名:wpadmin
  3. 密码:wpadmin密码
  4. 数据库主机:rds的endpoint
  5. 表前缀:wp_

点击[进行安装]。

  1. 站点标题:aws beanstalk
  2. 用户名:beanstalk
  3. 输入两次密码:任意
  4. 您的电子邮件:beanstalk@awspack.com
  5. 点击[安装wordpress]

安装成功之后点击[登录]。

  1. 用户名:beanstalk
  2. 密码:设定站点是设置的密码
  3. 点击[登录]

成功的登录到wordpress了!

结语

在这里只是搭建了单台ec2加单台rds的wordpress环境,也可使用aws elastic beanstalk配置load blancing,auto scaling及rds主从的wordpress环境提高可用性。