このエントリーをはてなブックマークに追加

WORDPRESSのインストール

サーバーの使用条件を満たす

WORDPRESS日本語ページ に行き、使用条件を読みます。

例)2011/08/08現在の最新版
WordPress 3.2 日本語版
PHP バージョン 5.2.4 以上
MySQL バージョン 5.0 以上

PHPやMySQLのバージョンが合わない時は、指定されたバージョンをあらかじめインストールしておきます。ただし、MySQLやPHPの場合(特にPHPは)バージョンアップすることで互換性が損なわれる場合あがるので、そのサーバーの他のサイトに影響を与えてしまいそうな時は、旧バージョンを探してインストールするという手もあります。旧バージョンの使用条件はここにあります。

使うバージョンが決まったらここから目的のバージョンをダウンロードします。

ソース一式の準備

最新版をダウンロードしたら、圧縮ファイルをサーバーにアップします。
そして、
tar xvzf wordpress-(バージョン番号)-ja.tar.gz
のようにして解凍します。(バージョン番号)の部分はダウンしたバージョン番号に読み替えてください。wordpressというディレクトリと、その下に3つディレクトリができると思います。

解凍は作業用ディレクトリ(例えば/var/tmp)で行っていると思います。なので、これをブラウザから見える位置に移動させます。
mv wordpress (移動先ディレクトリ)

また、移動先のディレクトリとファイルの所有者を一致させておかないと、ないと、FTPでファイルのアップ/ダウンができなくなるだけでなく、プラグインの自動インストールもできなくなります。
chown -R ユーザー.グループ (移動先ディレクトリ)/wordpress

また、wordpressの下のwp-content というディレクトリにパーミッション777を与えておかないと、WORDPRESSから書き換えができなくなります。「ブラウザから見える位置にパーミッション777なんてとんでもない」という方は、wp-contentの下にuploadsというディレクトリを作り、そのディレクトリの所有者をapacheが実行するユーザー.グループと同じにしてください。

例)
mkdir (移動先ディレクトリ)/wordpress/wp-content/upload
chown -R apache.apache (移動先ディレクトリ)/wordpress/wp-content/upload

移動先ディレクトをブラウザから見えるように設定するためには、apacheのhttpd.confをいじる必要があります。 httpd.confの書き方については、各自Google検索するなどして調べておいてください。

MySQLの準備

WORDPRESSが指定しているバージョンのMySQLをインストールして、起動させておきます。また、PHPのMySQL関数も使えるように設定しておかなければなりません。 MySQLのインストールはここ、PHPのインストールはここを見てインストール・設定しておいてください。

ここからは、既にMySQLがインストールされ、PHPのMySQL関数が使える状態になっているものとします。WORDPRESSが使うデーターベースとユーザーを作る必要があります。ここでは(データーベース名)(ユーザー名)(パスワード)と仮に表記しますので、各自で決めて、読み替えてください。

mysql -uroot -p(パスワード)
パスワードはMySQLのルートパスワードです。MySQLのルートパスワードが設定されてない場合は、-p以降は不要です。
mysql> CREATE DATABASE (データーベース名) DEFAULT CHARACTER SET utf8;
mysql> GRANT ALL ON *.* TO (ユーザー名)@localhost;
mysql> set password for (ユーザー名)@localhost=old_password('(パスワード)');

ここで、old_passwordとしているのは、PHPのバージョンによってはMySQL4.1以降のアルゴリズムで生成されたパスワードに対応していない場合があるため、念のため古いアルゴリズムでパスワードを生成しているためです。しかし、最近(2011年現在)のバージョンではpasswordで(つまりold_をつけなくても)大丈夫だと思います。バージョン何から大丈夫なのか未確認のため、ここではold_passwordとしています。

WORDPRESSの起動

wordpressディレクトリ以下にwp-config-sample.phpというファイルがあります。これは設定ファイルの雛形です。これを、-sampleをぬいてコピーして、正式な設定ファイルにします。
cp wp-config-sample.php wp-config.php

設定ファイルを設定します。
vi wp-config.php
/** WordPress のためのデータベース名 */
define('DB_NAME', '(データーベース名)');

/** MySQL データベースのユーザー名 */
define('DB_USER', '(ユーザー名)');

/** MySQL データベースのパスワード */
define('DB_PASSWORD', '(パスワード)');

/** MySQL のホスト名 */
define('DB_HOST', 'localhost');

/** データベースのテーブルを作成する際のデータベースのキャラクターセット */
define('DB_CHARSET', 'utf8');
CREATE DATABASEした時のデーターベース名、GRANTで作成したユーザー名、set passwordした時のパスワードをここで設定します。また、CREATE DATABASEした時の文字コードを設定します。ここでは、文字コードはutf8としています。

そしたら、ブラウザからwordpress以下のindex.phpにアクセスします。あとは画面の指示に従って操作するだけでWORDPRESSの方で自動的に設定してくれます。

設定をミスった場合

一般設定の「WordPress のアドレス (URL)」をミスってしまった場合、ブラウザで戻すことができません。そもそもブラウザで管理画面に入れません。まるで、ルーターの設定でIPアドレスをアクセスできないアドレスにしてしまった時みたいです。ルーターの場合は工場出荷時の設定に戻せば良いのですが、WORDPRESSの場合はどうすればいいのでしょう?

一時しのぎとして、wp-config.phpに、
define('WP_SITEURL', '(正しいWordPressのアドレス)');
を入れれば管理画面にも入れますし、ブログも正しく表示されます。お客さんの使っているブログを間違って設定してしまった場合は、一時的にこの方法で最低でもブログは表示するようにしておきましょう。

ただし、この方法では管理画面でWordPress のアドレス (URL)の部分がグレーアウトしてしまい修正ができません。そこで、データーベースを直接操作して修正します。

コマンドラインから操作する場合、
update wp_options set option_value='(正しいWordPressのアドレス)' where option_name='siteurl';
とします。この場合に限らず、データーベースを操作する時は、『where忘れ』には十分注意してください。じゃないと取り返しがつかなくなります。最悪、WORDPRESSを1から入れなおしになっちゃいます。データーベースの操作ミスは取り返しがつかないので注意してください。念のためmysqldumpでダンプを取っておくと安全です。(ダンプを戻す時にデーターが先祖がえりしますが・・・)

phpMyAdminで操作する場合、wp_optionsテーブルからoption_nameがsiteurlになっている行を探し、option_valueを正しいURLにセットします。

プラグイン毎の注意

Executable PHP widget
ウィジェットにPHPコードが使えるようにするプラグインです。ただし、この場合PHPコードはutf8で記載されますので、php.iniで
mbstring.internal_encoding = utf8
になっていないと、日本語の部分でエラーになる場合があります。この場合、parse errorならまだわかるのですが、マルチバイトの1文字目、2文字目を内部でズレて解釈してしまい、""(ダブルクォート)や { }(中カッコ)の数が合わなくて、意味不明のエラーが発生する場合があります。

php.iniを書き換えられないのであれば、httpd.confの<VirtualHost>内で、
php_value mbstring.internal_encoding UTF8
と設定するという手もあります。

Tweetable
ツイッターと連動させるプラグインです。PHPのcURL関数を必要としますので、 あらかじめPHPを --with-curl[=DIR] を付けてコンパイルしておく必要があります。

また、WORDPRESSをアプリとしてツイッターに登録する必要があります。


Application TypeはBrowser、CallbackURLはTweetableの設定画面に出ていますのでそれをコピペします。CallbackURLを設定しておかないと、正しくアプリが設定されません。Default Access TypeはRewr & Write、Use Twitter for loginはチェックしません。

あとは画面の指示通りにやれば良いのですが、これだとなぜかアクセスタイプがRead Onlyになってしまいます。そこで、もう1回アクセスタイプを変更します。現在(2011年8月)の一過性のバグではないかと思われますので、もう少ししたらこの現象が解消されると思います。

アクセスタイプの変更は、ツイッターのホームページ→ログイン→設定→アプリ連携→「開発者 連携アプリの追加と設定はこちらから変更できます。」の「こちら」という文字をクリック →ログイン→今設定したアプリ名をクリック→Setting→「Application type」の項目の「Read and Write」をチェック→[Update this Twitter application's settings]→[Recreate my acces token]の順にクリックします。

これをやると、WORDPRESSとツイッターとの連携が解除されてしまうので、もう1回WORDPRESSの管理画面から、プラグイン→Tweetable→Settings→ Twitter Account: Change(右上のChangeという文字を押す)→[Continue]→[Save and Continue]を押して連動を再設定します。

多分、アクセスタイプの部分はラジオボタンのvalue値の設定ミスだと思うんですけど、それを戻すのにえらい苦労します。

BASIC認証をかける

デフォルトのままだと、管理画面が/wp-adminというディレクトリに入ります。

しかし、apacheのアクセスログを見ると、
/backup/wp-admin
/OLD/wp-admin
/wp/wp-admin
/wp-admin
/wordpress/wp-admin
というディレクトリへの不正アクセスが跡を絶ちません。これは、wordpressの入ってるサーバーを探して、広告・宣伝に書き換えてしまおうという輩がインターネット中にいるからです。これを見ると、デフォルトの場所はもちろん、多くの人が設置しそうな場所にも探りを入れているのがわかります。

wordpressの管理画面は、管理者しかログインできないようにパスワードを求めるようになっているのですが、私が安易なパスワードにしたのがいけなかったのか、wordpressのパスワードを突破する方法があるのか、とにかく気がついたら内容を書き換えられていました。

なので、wordpressの管理画面のディレクトリにはBASIC認証をかけておきましょう。また、管理者の回線が固定IPを使っているのであれば、httpd.confでIPアドレスで制限をかけるのも手です。
このページの先頭へ
  広告