前回に続いて、Amazon EC2のMicro InstancesにPHPをセットアップするで構築した環境にWordPressをインストールしたいと思います。
※ 自宅サーバー再構築 その16 CentOS 5.2 にWordPressを導入してブログサイトを構築するを参考に進めました。
データベースの作成
まず、WordPressで使用するデータベースを作成します。
Query OK, 1 row affected (0.00 sec)
※ データベース名は任意の名前を指定することができます。ここではwordpressとしています。
+——————–+
| Database |
+——————–+
| information_schema |
| wordpress |
| mysql |
+——————–+
3 rows in set (0.00 sec)
作成されました。
次に、ユーザを作成します。
Query OK, 0 rows affected (0.00 sec)
※ 任意のユーザ名、パスワードを指定することができます。ここではユーザ名をwordpress、パスワードを「任意のパスワード」としています。
+—————–+———–+——————————————-+
| host | user | password |
+—————–+———–+——————————————-+
| localhost | root | 任意のパスワード |
| ip-10-243-3-212 | root | |
| 127.0.0.1 | root | 任意のパスワード |
| localhost | | |
| ip-10-243-3-212 | | |
| localhost | wordpress | 任意のパスワード |
+—————–+———–+——————————————-+
6 rows in set (0.00 sec)
ユーザが作成されました。
WordPressのインストール
2010/10/17時点のWordPress最新バージョンは3.0.1です。
WordPress | 日本語より、wordpress-3.0.1-ja.zipをダウンロードします。
–2010-10-05 01:34:54– http://ja.wordpress.org/wordpress-3.0.1-ja.zip
Resolving ja.wordpress.org… 72.233.56.138, 72.233.56.139
Connecting to ja.wordpress.org|72.233.56.138|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 3344725 (3.2M) [application/octet-stream]
Saving to: “wordpress-3.0.1-ja.zip”
100%[==============================================================================>] 3,344,725 1.27M/s in 2.5s
2010-10-05 01:34:57 (1.27 MB/s) – “wordpress-3.0.1-ja.zip” saved [3344725/3344725]
ダウンロードしたzipファイルを解凍します。
[root@ip-10-244-151-151 html]# ls -lv
total 3276
drwxr-xr-x 5 root root 4096 Jul 30 04:43 wordpress
-rw-r–r– 1 root root 3344725 Oct 5 01:34 wordpress-3.0.1-ja.zip
続いて、ブラウザより解凍したフォルダにアクセスします。今回の例では、「http://ホスト名/wordpress/」になります。
お!何かエラーが出ています。
お使いのサーバのPHPではWordPressに必要なMySQL拡張を利用できないようです。
そういえば、php-mysqlのモジュールをインストールするのを忘れていました。早速インストールします。
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
amzn | 2.1 kB 00:00
Setting up Install Process
Resolving Dependencies
–> Running transaction check
・
・
・
Total download size: 133 k
Installed size: 306 k
Is this ok [y/N]: y
・
・
・
Installed:
php-mysql.i386 0:5.3.2-3.6.amzn1
Dependency Installed:
php-pdo.i386 0:5.3.2-3.6.amzn1
Complete!
インストール完了です。
Apacheを再起動します。
Stopping httpd: [ OK ]
[root@ip-10-244-151-151 etc]# /etc/init.d/httpd start
Starting httpd: [ OK ]
再度、ブラウザでアクセスしたところ、今度はエラーも出ず、正常にWordPressのページが表示されました。
次に、wp-config.phpを作成します。ブラウザから必要な情報を入力しても作成できますが、今回は、サーバ上でwp-config-sample.phpをコピーしてから、データベース名、ユーザ名、パスワードなどを編集するようにしました。
wp-config.phpを編集します。
define(‘DB_NAME’, ‘database_name_here’);
database_name_hereをwordpressに変更します。
define(‘DB_USER’, ‘username_here’);
username_hereをwordpressに変更します。
define(‘DB_PASSWORD’, ‘password_here’);
password_hereを「任意のパスワード」に変更します。
以上で、WordPressの導入は完了です。
Elastic IPの適用
ここで、Amazon EC2ならではの問題が発生しました。一度、起動しているInstanceをstopした後、再度、startしてから上記WordPressのサイトにブラウザでアクセスすると、適用しているthemeのstyle.cssがダウンロードできず、スタイルが崩れてしまうのです。また、管理者ページにアクセスしても、ページが表示されません。
Amazon EC2はstart/stopやLaunchしなおす度にパブリックIPが振り直され、ホスト名が変わってしまうため、前回のWordPressの設定が、一部、正しくなくなってしまうので、このような問題が発生していました。
なので、Elastic IPでパブリックIPを1つ取得し、それをインスタンスに割り当てることで、上記の問題が再現しないようにすることにしました。
※ Elastic IPでは、別途使用料が発生します。
まず、パブリックIPを取得します。AWS Management Consoleにログインします。
左ペインより、「Elastic IPs」を選択し、「Allocate New Address」ボタンをクリックすると、確認メッセージが表示されます。
表示がちょっとおかしくなってますが、とりあえず、次に進みます。「Yes, Allocate」ボタンをクリックします。
パブリックIPが発行され、そのIPを割り当てるインスタンスを選択し、「Associate」ボタンをクリックします。
これで、起動中のInstanceにパブリックIPを割り当てることができました。
続いて、WordPressの設定を一部変更します。管理者画面にログインし、「一般」設定を開きます。
※ 一度、データベースを削除して、初期状態に戻してから再設定するか、wp_optionsテーブルの該当するレコードを変更することにより、管理者画面にログインできるようになります。
「WordPressのアドレス(URL)」と「サイトのアドレス(URL)」をAmazon EC2のホスト名から、Elastic IPで割り振ったパブリックIPに変更します。これで、上記の問題を回避することができました。
php-mbstringのインストール
WordPressのWP Multibyte Patchというpluginを適用している最中に、エラーが発生しました。
お使いのWP Multibyte Patchを有効にするには、PHPのmbstring関数が必要です。
今度もインストールするのをわすれていました。早速、php-mbstringをインストールします。
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
amzn | 2.1 kB 00:00
Setting up Install Process
Resolving Dependencies
・
・
・
Total download size: 1.0 M
Installed size: 1.8 M
Is this ok [y/N]:y
・
・
・
Running Transaction
Installing : php-mbstring-5.3.2-3.6.amzn1.i386 1/1
Installed:
php-mbstring.i386 0:5.3.2-3.6.amzn1
Complete!
インストール完了です。
今度はpluginを適用することができました。
flashcastのテーマをインストールして、再度、ブラウザでアクセスします。
あれ?デザインが崩れています。。。右側のサイドバーとフッターが表示されていないようです。後で分かったのですが、これは、tweetmemeというpluginを導入していなかったため起きた問題でした。
これで、当ブログサイトと同等な環境を構築することができました!