Amazon EC2(AWS)LinuxインスタンスでWordPressをセットアップするためのステップバイステップガイド
公開: 2017-05-25Amazon Elastic Compute Cloud( Amazon EC2 )は、クラウドでサイズ変更可能なコンピューティング容量を提供するクラウドサービスです。 これは、開発者がWebアプリケーションをより適切にスケーリングおよび監視できるように設計されています。
Amazon EC2は、Elastic IP、負荷分散、さまざまなプラットフォーム(Linux、Windowsなど)、スケーリング、モニタリングなどの高度な機能を提供します。開発者は、Webアプリケーションをより適切に管理することも簡単です。
他のVPSプロバイダーと比較してアマゾンは低価格で、より多くの機能と他の関連する素晴らしいサービスを持っているのでWordPress on AWS
ホストすることは賢い選択です。 また、インスタンスの実行時間ごとに課金されます。
そのため、このチュートリアルでは、LinuxプラットフォームでLAMP環境をセットアップし、AmazonEC2インスタンスにWordPressブログを手動でインストールする方法を紹介します。
このステップバイステップガイドは、cPanelとは異なるホストを完全に管理するのに役立ちます。
1.AWSアカウントを作成します
まず、AWSアカウントを作成する必要があります。 このリンクをたどってサインアップできます。 クレジットカードまたは国際デビットカードと、オンライン登録確認プロセスの一環として電話をかける電話番号を、条件とポリシーに従って提供する必要があります。
クレジットカードまたはデビットカードには少額の料金が請求され、確認後、返金されます。 Amazonは、WordPressをインストールする無料使用枠を提供しています。これは、サービスを探索したり、1ペニーを請求することなく実際のアプリをホストしたりするのに最適です。
2.インスタンスを作成します
登録後、利用できるオプションがたくさんありますが、おそらくこの質問が頭に浮かびます。 Which type of instance should I choose
か?
新しいブログをお持ちの場合は、約200以上のリアルタイムトラフィックを処理できるEC2 micro instance
を選択できます。
価格構造も魅力的ですが、既存のブログを移行して1日あたりのトラフィックが1,000を超える場合は、そのトラフィックを非常に簡単に処理できるスモールインスタンスを選択する必要があります。
新しいインスタンスを作成するには、AWSマネジメントコンソールにアクセスし、[EC2]タブをクリックします。
- クラシックインスタンスウィザードでAMIを選択します。
- 基本的な64ビットUbuntuサーバーAmazonLinuxAMIを選択しました。
- インスタンスの詳細:
- 使用するインスタンスタイプを選択します。 Small(m5a.small)を選択しました。
- 新しいキーペアを作成します。
- キーペアの名前を入力し(つまり、crunchify)、キーペアをダウンロードします(つまり、
crunchify.pem
)。
- キーペアの名前を入力し(つまり、crunchify)、キーペアをダウンロードします(つまり、
- クイックスタートセキュリティグループを選択します。
- インスタンスを起動します。
3.インスタンスにSSHで接続します
インスタンスのセットアップが完了し、インスタンスが実行中であることが示されたら、 ssh
で接続できます。
- まず、インスタンスのIPアドレス(パブリックDNS)を特定する必要があります。
- AWSマネジメントコンソールでインスタンスを選択します。
- インスタンスの説明(画面の下部)でパブリックDNSを探します。
そのアドレス(および.pemファイルへのパス)を使用して、インスタンスにSSH接続します。
1 |
ssh ec2 - user @ ec2 - 50 - 17 - 15 - 27.compute - 1.amazonaws.com - i ~ / crunchify . pem |
Windowsシステムを使用している場合は、SSHとして接続するためにPuttyを使用する必要があります。 この記事に従うことで、パテに接続できます。
.pemファイルのパーミッションが開いているというエラーメッセージが表示された場合は、.pemファイルを次のようにchmodします。
1 |
[ ec2 - user ~ ] $ chmod 600 ~ / crunchify . pem |
このチュートリアルでは、多くのシェルコマンドを実行する必要があり、ほとんどのコマンドにはルートアクセスが必要です。 したがって、これを回避するために、このコマンドでユーザーを1回切り替えることにより、これらのすべてのコマンドの前にsudoを付けます。
1 |
[ ec2 - user ~ ] $ sudo su |
4. PHPを実行するために、ApacheWebサーバーをインストールします
Apache Webサーバーをインストールするには、「ターミナル」と入力します。
1 2 3 4 |
[ ec2 - user ~ ] $ sudo yum - y install python - simplejson # Install PHP latest version [ ec2 - user ~ ] $ sudo yum update # System wide upgrade [ ec2 - user ~ ] $ sudo yum install - y default - jre # Install Java (just to be safe) [ ec2 - user ~ ] $ sudo yum install httpd # Install HTTPD server |
ApacheWebサーバーを起動します。
1 |
[ ec2 - user ~ ] $ service httpd start |
セットアップ後、Webサーバーをテストするには、ブラウザーを開いてWebサイトにアクセスします。
1 |
http : //ec2-50-17-15-27.compute-1.amazonaws.com |
(実際のパブリックDNS名を使用してください)。 標準のAmazonプレースホルダーのデフォルトページが表示されます。
5.PHPをインストールしてWordPressを実行します
PHPをインストールするには、ターミナルに次のように入力します。
1 |
[ ec2 - user ~ ] $ yum install php php - mysql |
phpを正常にインストールした後、ApacheWebサーバーを再起動します。
1 |
[ ec2 - user ~ ] $ service httpd restart |
PHPインストールをテストするためのページを作成します。
1 2 |
[ ec2 - user ~ ] $ cd / var / www / html [ ec2 - user ~ ] $ vi test . php |
i
と入力して、挿入モードを開始します<?php phpinfo() ?>
入力します:wq
と入力してファイルを書き込み、viを終了します
ブラウザを開き、test.phpにアクセスして、PHPのインストールをテストします。
1 |
http : //ec2-50-17-15-27.compute-1.amazonaws.com/test.php |
(パブリックDNS名を使用してください)
6.データベースを追加するためにMySQLをインストールします
MySQLをインストールするには、次のように入力します。
1 |
[ ec2 - user ~ ] $ yum install mysql - server |
MySQLを起動します:
1 |
[ ec2 - user ~ ] $ service mysqld start |
「ブログ」データベースを作成します。
1 |
[ ec2 - user ~ ] $ mysqladmin - u root create blog |
データベースを保護します。
1 |
[ ec2 - user ~ ] $ mysql_secure_installation |
ウィザードの質問に次のように答えます。
- ルートの現在のパスワードを入力してください:なしの場合はreturnキーを押してください
- ルートパスワードの変更:Y
- 新しいパスワード:新しいパスワードを入力します
- 匿名ユーザーを削除します:Y
- rootログインをリモートで禁止する:Y
- テストデータベースを削除してアクセスします:Y
- 今すぐ特権テーブルをリロードします:Y
7.WordPressをインストールします
WordPressをインストールするには、次のように入力します。
1 2 |
[ ec2 - user ~ ] $ cd / var / www / html [ ec2 - user ~ ] $ wget http : //wordpress.org/latest.tar.gz |
tar.gzファイルを解凍するには、次のように入力します。

1 |
[ ec2 - user ~ ] $ tar - xzvf latest . tar . gzcd |
これにより、WordPressが独自のWordPress
ディレクトリに解凍されます。
WordPressを別のディレクトリに置くのが好きですが、「http://your-site.com/blog」のようなサブドメインにインストールする場合は、名前を「blog」に変更します。
1 |
[ ec2 - user ~ ] $ mv wordpress blog |
それ以外の場合は、次のように入力して、すべてのファイルを親フォルダーに移動します。
1 |
[ ec2 - user ~ ] $ mv * . * . . |
WordPressのwp-config.phpファイルを作成します。
1 2 3 |
[ ec2 - user ~ ] $ cd blog [ ec2 - user ~ ] $ mv wp - config - sample . php wp - config . php [ ec2 - user ~ ] $ vi wp - config . php |
i
と入力して、挿入モードを開始します。
データベース接続パラメータを次のように変更します。
1 2 3 4 |
define ( ‘ DB_NAME ’ , ‘ blog ’ ) ; define ( ‘ DB_USER ’ , ‘ root ’ ) ; define ( ‘ DB_PASSWORD ’ , ‘ YOUR_PASSWORD ’ ) ; define ( ‘ DB_HOST ’ , ‘ localhost ’ ) ; |
esc
を1回押してから:wq
と入力してファイルを書き込み、viを終了します
ブラウザを開き、ブログにアクセスします。
1 |
http : //ec2-50-17-15-27.compute-1.amazonaws.com/blog (Use your public DNS name). |
これにより、WordPressのインストール構成プロセスが開きます。
ヒント:WordPressがパーマリンクを使用できるようにするには
WordPressのパーマリンクは正しく機能するためにApache.htaccessファイルを使用する必要がありますが、これはAmazonLinuxではデフォルトで有効になっていません。 この手順を使用して、Apacheドキュメントルートですべてのオーバーライドを許可します。
お気に入りのテキストエディタ(nanoやvimなど)でhttpd.confファイルを開きます。 お気に入りのテキストエディタがない場合は、初心者がnanoを使用する方がはるかに簡単です。
1 |
[ ec2 - user wordpress ] $ sudo vim / etc / httpd / conf / httpd . conf |
<Directory“ /var/www/html
“>で始まるセクションを見つけます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
< Directory "/var/www/html" > # # Possible values for the Options directive are "None", "All", # or any combination of: # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews # # Note that "MultiViews" must be named *explicitly* --- "Options All" # doesn't give it to you. # # The Options directive is both complicated and important. Please see # http://httpd.apache.org/docs/2.4/mod/core.html#options # for more information. # Options Indexes FollowSymLinks # # AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # Options FileInfo AuthConfig Limit # AllowOverride None # # Controls who can get stuff from this server. # Require all granted < / Directory > |
上記のセクションのAllowOverride None
行をAllowOverride All
に変更します。
ノート:
このファイルには複数のAllowOverride
行があります。 <Directory "/var/www/html"
>セクションの行を必ず変更してください。
1 |
AllowOverride All |
- ファイルを保存して、テキストエディタを終了します。
8.IPアドレスとドメイン名をマップします
ブログを本番環境で使用するには、次のことを行う必要があります。
- IPアドレスをインスタンスに関連付けます
- ドメイン名をそのIPアドレスにマッピングします
- IPアドレスをインスタンスに関連付けるには:
手順:
- AWSマネジメントコンソールで、Elastic IPs(左側のナビゲーションバー)をクリックします
- [新しいアドレスの割り当て]をクリックし、[はい、割り当て]ボタンをクリックして確認します
- 新しく割り当てられたIPアドレスを右クリックし、ポップアップメニューで[関連付け]を選択します。 作成したインスタンスを選択し、[はい、関連付けます]をクリックします
- ドメイン名をIPアドレスにマッピングするには、ドメイン登録事業者が提供するツールを使用する必要があります。
- GoDaddyを使用する場合は、ドメインのネームサーバーとしてNS73.DOMAINCONTROL.COMとNS74.DOMAINCONTROL.COMを指定し、DNSマネージャーを使用してAレコードを変更し、IPアドレスを指定します。
- すべてが正しく構成およびマッピングされたら、WordPress管理コンソールの一般設定にアクセスし、ドメイン名を使用してWordPressアドレスとサイトアドレスが正しく指定されていることを確認します
その他の方法:WordPressサイトのURLをwp-cliで変更するには
インスタンスの古いサイトのURLと新しいサイトのURLをメモします。 古いサイトのURLは、WordPressをインストールしたときのEC2インスタンスのパブリックDNS名である可能性があります。 新しいサイトのURLは、EC2インスタンスの現在のパブリックDNS名です。
古いサイトのURLがわからない場合は、curlを使用して次のコマンドで検索できます。
1 |
[ ec2 - user ~ ] $ curl localhost | grep wp - content |
出力に古いパブリックDNS名への参照が表示されます。これは次のようになります(古いサイトのURLは赤で表示されます)。
1 |
<script type = 'text/javascript' src = http : //ec2-50-17-15-27.compute-1.amazonaws.com/blog/wp-content/themes/twentyfifteen/js/functions.js?ver=20150330'></script> |
次のコマンドを使用してwp-cliをダウンロードします。
1 |
[ ec2 - user ~ ] $ curl - O https : //raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar |
WordPressインストールの古いサイトのURLを検索して、次のコマンドで置き換えます。 EC2インスタンスとWordPressインストールへのパス(通常は/var/www/html
または/var/www/html/blog
)を新旧のサイトURLに置き換えます。
1 |
[ ec2 - user ~ ] $ php wp - cli . phar search - replace 'old_site_url' 'new_site_url' -- path =/ path / to / wordpress / installation -- skip - columns = guid |
Webブラウザーで、WordPressブログの新しいサイトURLを入力して、サイトが再び正常に機能していることを確認します。
それでおしまい。
これで、 LAMP環境が正常に作成され、 AmazonEC2にWordPressがインストールされました。 何らかのエラーが発生したり、タスクの一部でスタックしたりした場合は、ここにコメントしてお知らせください。
私たちはあなたの問題の解決策を提供するために最善を尽くします。