AWSにものすごい勢いでWPを自前で、地味に立てる
- Amazon Linux
- t2.micro
- 確認と作成
- セキュリティーグループの編集
- http 80
- ssh 22
- キーペアの作成
- 新しいキーペアの作成
- 適当に名づける
- キーペアのダウンロード
- ~/.sshに保存
- xxx.pem
- インスタンスの作成
- インスタンスの表示
- 黄色のアイコンでpendingになっている
- 表のNameにカーソルをもっていくと鉛筆アイコンが出るのでクリック
- 適当な名前をつけておく
- チェックマークをクリックして保存
- 新しいアドレスの割当
- VPCを選択 (t2.microがvpcのため)
- 関連付ける
- 閉じる
- 表の中より出来たIPにカーソルを持っていて右クリック
- アドレスの関連付け
- インスタンスの入力枠をクリックし、表示されるサーバの中から、先ほど名付けたサーバを選択
- 関連付ける
- 関連付けたElastic IPをメモしておく
- .ssh/configの設定
Host hostname
HostName xx.xx.xx.xx
Port 22
User ec2-user
IdentityFile ~/.ssh/hostname.pem
- 該当の鍵の権限の設定
chmod 0600 /Users/megane9988/.ssh/hostname.pem
- ssh接続の確認
ssh hostname
- アップデート
sudo yum update
- nginxのインストール
sudo yum install nginx -y
sudo chkconfig nginx on
chkconfig --list nginx
- nginxインストールの確認
- IPでブラウザよりアクセスしてみて、nginxのスタート画面が出ればOK
sudo rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
sudo yum install --enablerepo=webtatic-testing php70w php70w-devel php70w-fpm php70w-mysql php70w-mbstring php70w-pdo
- /etc/nginx/conf.d の中にあるvirtual.confをコピー
- 新たにドメインに紐付けるディレクトリを設定する
sudo cp virtual.conf virtual-hostname.conf
コピーした中身を以下に差し替え
server {
# ポート開放とドメインの設定
listen 80;
server_name 任意のドメイン名;
location / {
# 該当ドメインのルートディレクトリ設定
root /var/www/vhosts/任意のディレクトリ;
# パーマネントリンクが設定できるように
index index.html index.htm index.php ;
if (-f $request_filename) {
expires 30d;
break;
}
if (!-e $request_filename) {
rewrite ^.+?(/wp-.*) $1 last;
rewrite ^.+?(/.*\.php)$ $1 last;
rewrite ^ /index.php last;
}
location ~* ^.+.(jpg|jpeg|gif|png|css|js|flv|swf|ico|xml)$ {
access_log off;
expires 30d;
root /var/www/vhosts/任意のディレクトリ;
}
}
# phpが動くように
location ~ \.php$ {
root /var/www/vhosts/任意のディレクトリ;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
/etc/php-fpm.d/www.conf このファイルの中身から以下の内容を探しそれぞれ編集する
user = ec2-user
group = ec2-user
これでec2-userでphpが動かせるようになる
sudo service php-fpm start
sudo chkconfig --list php-fpm
sudo chkconfig php-fpm on
- ホームディレクトリに移動
cd ~/
- 公式サイト の内容にしたがって作業
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
php wp-cli.phar --info
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
成功すると
$ wp --info
PHP binary: /usr/bin/php5
PHP version: 5.5.9-1ubuntu4.14
php.ini used: /etc/php5/cli/php.ini
WP-CLI root dir: /home/wp-cli/.wp-cli
WP-CLI packages dir: /home/wp-cli/.wp-cli/packages/
WP-CLI global config: /home/wp-cli/.wp-cli/config.yml
WP-CLI project config:
WP-CLI version: 0.23.0
- 該当のディレクトリに移動後、コアファイルをダウンロード
wp core download
その後、ブラウザからアクセスすればWordPressのインストールが始まる
- RDSの画面に移動
- インスタンス
- DBインスタンスの起動
- MySQLを選択
- 開発/テストを選択
- DBインスタンスのクラス
- db.t2.micro
- マルチAZ配置
- いいえ
- ストレージタイプ
- 汎用SSD
- ストレージ割当
- 最小の5GB
- 任意の設定(必ずメモしておく)
- DB インスタンス識別子
- マスターユーザの名前
- マスターパスワード
- マスターユーザーのパスワード
- パスワードの確認
awsmgn
0hpsr84x18n2
awsmgn01
awsmgn.cpasuwpr0wjt.ap-northeast-1.rds.amazonaws.com
- セイキュリティー&ネットワーク
- VPC : 適当に設定されたものを利用
- サブネットグループ : 新しDBサブネットグループの作成
- パブリックアクセス可能 : はい
- アベイラビリティーゾーン : どちらでもよいので選ぶ
- VPC セキュリティグループ : ec2と同じ物を選ぶ
- このセキュリティーグループにてmysql/auroraの許可が必要
- データベースの設定
- 名前を記述(任意)
あとはそのまま
- DBインスタンスの作成
Cannot create a publicly accessible DBInstance. The specified VPC does not support DNS
というエラーがでたら、以下の内容を対応する
VPCの一覧において右クリックよりDNSホスト名の編集で"はい"にする
- 作成中になればOK
- 出来上がるまで待つ
データベース名:データベース名
ユーザ名:ユーザ名
パスワード:パスワード
データベースホスト名:DBインスタンスのエンドポイント
テーブル接頭辞:任意(複数Wordpressを作る場合は被らない様にする)