当サイト、Codex 日本語版は今後積極的な更新は行わない予定です。後継となる新ユーザーマニュアルは、https://ja.wordpress.org/support/ にあります。
万が一、当サイトで重大な問題を発見した際などは、フォーラムWordSlack #docs チャンネルでお知らせください。</p>

wp-config.php の編集

提供: WordPress Codex 日本語版
2008年4月19日 (土) 00:21時点におけるBono (トーク | 投稿記録)による版 (Secret Key、言語および言語ディレクトリ、WordPress アドレス、ブログアドレス節を和訳+情報追加/未翻訳あり)

移動先: 案内検索

WordPress のインストールの一環として、MySQL データベースへのアクセスに必要な WordPress 環境設定を定義する wp-config.php ファイルの修正が必要です。

この wp-config.php ファイルは、WordPress のダウンロードファイルの中には存在しません。同梱されている wp-config-sample.php ファイルを見本にして、自分で作成します(このページで具体的に説明していきますのでご安心を)。

インストール時に wp-config.php を変更するには、次の情報が必要です:

  • データベース名
  • データベース・ユーザ名
  • データベース・パスワード
  • データベース・ホスト

ホスティング・プロバイダ(レンタルサーバ)側で WordPress をインストールしてくれたのであれば、この情報はそちらから得られます。自分でウェブサーバやホスティング・アカウントを管理しているなら、データベースとユーザを作成したときにこの情報を持っているはずです。(WordPress のインストール - データベースとユーザの作成 参照)

テキストエディタwp-config-sample.php ファイルを開きます。
(あらかじめ wp-config-sample.php を複製し wp-config.php にリネームした上で、wp-config.php に対して以下の編集を行なってもよいです。)

重要: Microsoft Word のようなワープロソフトは、WordPress ファイルの編集には 絶対に 使わないでください!

データベース名

次の行を探します:

define('DB_NAME', 'putyourdbnamehere');    // The name of the database

注: 各行の // 以降の文字は、説明用のコメントです。)

putyourdbnamehere の部分だけを消して、あなたのデータベース名を入力してください。シングルクォーテーションマーク(')を誤って消さないように注意!

この行は次のようになったはずです:

define('DB_NAME', '自分のデータベース名'); // The name of the database

データベース・ユーザ名

define('DB_USER', 'usernamehere');     // Your MySQL username

usernamehere を削除して、自分のユーザ名を入力:

define('DB_USER', '自分のデータベース・ユーザ名'); // Your MySQL username

データベース・パスワード

次の行で:

define('DB_PASSWORD', 'yourpasswordhere'); // ...and password

yourpasswordhere を削除して、自分の MySQL パスワードを入力:

define('DB_PASSWORD', '自分のパスワード'); // ...and password

もちろん上のパスワードは例ですよ!自分のを入れてくださいね。 :)

データベース・ホスト

パスワードの下の次の行で、あなたのデータベースのホストを定義します。ここは、ホスティング側から言われていたりしない限り、99% 変更しなくていいです。つまり、初期値 'localhost' のままにしておいてよいでしょう。

ホスト名が 'localhost' ではない場合は、次の行へ行き:

define('DB_HOST', 'localhost');    // 99% chance you won't need to change this value

localhost を削除して、ホスティングの指示どおりにデータベース・ホストをを入力:

define('DB_HOST', 'mysql34.myhostserver');     // 99% chance you won't need to change this value

mysql34.myhostserver ももちろん見本ですよ。

Possible DB_HOST values

Some possible DB_HOST vales for hosting companies:

  • BlueHost - localhost
  • AN Hosting - localhost
  • HostICan - localhost
  • DreamHost - (the database hostname you created; probably a subdomain like db.example.com)
  • LaughingSquid - localhost
  • Yahoo - mysql
  • GoDaddy - something similar to h41mysql52.secureserver.net
  • 1and1 - something similar to db12345678
  • one.com - localhost
  • pair Networks - something similar to dbnnnx.pair.com
  • Hosts with cPanel - localhost
  • Host with Plesk - localhost
  • XREA (無料サーバ) - localhost

Mysql Alternate Port

Also if your database host uses an alternate port number you'll need to change to reflect the alternate port:

define('DB_HOST', 'mysql34.myhostserver:3307');  // 99% chance you won't need to change this value

You'll need to change 3307 to reflect what your host provides you as the alternate port number.

Secret Key 重要

重要: SECRET_KEY の値は、初期値の 'put your unique phrase here' から変更してください。

バージョン 2.5 のリリースにより追加されたオプション項目 SECRET_KEY は、ユーザの Cookie に格納される情報の暗号化を強化します。この secret key は、他では使われていない語句としてください。

// Change SECRET_KEY to a unique phrase.  You won't have to remember it later,
// so make it long and complicated.  You can visit https://www.grc.com/passwords.htm
// to get a phrase generated for you, or just make something up.
define('SECRET_KEY', 'put your unique phrase here'); // Change this to a unique phrase. 

WordPress 日本語版

// SECRET_KEY を独自のフレーズに変更してください。あとで思い出す必要はないので長くて複雑なものにしてください。
// https://www.grc.com/passwords.htm を訪れればフレーズを生成してくれます。
// もしくは適当なフレーズをご自分でお作りください。
define('SECRET_KEY', 'put your unique phrase here'); // 固有のフレーズに変更してください

以下は、「SECRET_KEY とは何のためのものか?」という問いに対し、wp-hackers メーリングリストで Mark Jaquith より詳細説明があったものです。

It is a hashing salt that is not readable through the database. "And what is a salt?" A salt is something that adds randomness to a hash input and makes it much harder to crack. For example:

In these examples, consider that the password is "test", but that the cracker does not know this (indeed, this is what he's trying to determine). And yes, I'm glossing over some stuff, but this is the simplistic explanation.

Easy to crack: md5('test');

Since 'test' is a short dictionary word, crackers who have the output hash can easily use rainbow tables (dictionary lookup table) to crack that password in seconds, or minutes.

Harder to crack: md5('test' . $known_salt);

In this case, the cracker has to generate a new rainbow table that adds the $known_salt value to their table's hashes. This slows them down.

Even harder to crack: md5('test' . $unknown_salt);

In this case, they don't know the salt. And since a good salt is something very random, like "888a7da62429ba6ad3cb3c76a09641fc" -- they can't use rainbow tables to help them. They have to just "brute force" their way through all the possible combinations. This is a huge hurdle. Something that might take 10 minutes before could now take years.

データベース・キャラクタセット

WordPress バージョン 2.2 から、 DB_CHARSET で MySQL データベーステーブルの定義に使われるデータベースキャラクタセット(例: タイの TIS620 用の tis620)の指定ができるようになりました。この効果を十分に理解できないならば、デフォルト値 utf8Unicode UTF-8)を変更すべきではありません。UTF-8 は多くのヨーロッパ言語に対応しているので、DB_CHARSET は utf8 のままにしておき、あなたの言語に適切な DB_COLLATE を使うことに注意してください。

  • 新規インストール実行時の注意: ほとんどの欧米言語では、DB_CHARSET の初期値を変更する理由はないはずです。あなたのブログを他の文字コードセットにする必要があるなら、DB_CHARSET に正しい値を設定するために、MySQL でサポートされるキャラクタセットと照合順序(5.1)(4.1)をお読みください。
  • アップグレード実行時の注意wp-config.php ファイルに DB_CHARSETDB_COLLATE の行が存在しない場合、DB 文字コードセットの変換を読んで理解しない限り、どちらの定義も wp-config.php ファイルに追加しないでください。既存ブログの wp-config.php ファイルに DB_CHARSETDB_COLLATE を追加すると、不具合が生じる可能性があります — as Ryan Boren says, "your queries will go boom!"
  • SET NAMES 'utf8' を挿入していた場合: 2.1.3 以前に WordPress コアファイルに SET NAMES 'utf8' を挿入して運用していた場合は、その修正の替わりに DB_CHARSET 定義を使えます。この定義は WordPress 本体に組み込まれた SET NAMES 文で使われるものであり、同じ処理が行なわれます。

WordPress のデフォルト値 utf8 の例:

define('DB_CHARSET', 'utf8');

データベース照合順序

WordPress バージョン 2.2 から、DB_COLLATE で データベース照合順序(キャラクタセットのソート順)の指定ができるようになりました。ほとんどの場合、データベース照合順序は、データベース・キャラクタセット(DB_CHARSET)に基づいて MySQL によって自動的に割り当てられるので、この値はブランク(null)のままでいいはずです。DB_COLLATE には、ほとんどの欧米言語では Unicode キャラクタセット(utf8 照合順序)に記載されている UTF-8 の値の一つを設定します。

  • 新規インストール実行時の注意: 通常は、DB_COLLATE の初期値を変更する理由はないはずです。値をブランク(null)のままにしておけば、データベース作成時に MySQL によって自動的に割り当てられた照合順序となります。
  • アップグレード実行時の注意wp-config.php ファイルに DB_CHARSETDB_COLLATE の行が存在しない場合、DB 文字コードセットの変換を読んで理解しない限り、どちらの定義も wp-config.php ファイルに追加しないでください。既存ブログの wp-config.php ファイルに DB_CHARSETDB_COLLATE を追加すると、不具合が生じる可能性があります — as Ryan Boren says, "your queries will go boom!"

WordPress デフォルト値の DB_COLLATE の例:

define('DB_COLLATE', '');

UTF-8 Unicode Turkish collation にする必要がある場合の例(DB_CHARSET は utf8):

define('DB_COLLATE', 'utf8_turkish_ci');

$table_prefix

$table_prefix は、データベース・テーブル名の先頭に付ける値です。データベースの接頭辞を wp_ 以外にしたい場合、この値を変更してください。同じデータベースで複数の WordPress ブログを設置/en するときなどに変更します。

// You can have multiple installations in one database if you give each a unique prefix
$table_prefix  = 'wp_';   // Only numbers, letters, and underscores please!

WordPress 日本語版

// テーブルの接頭語を指定します。複数設置する場合など適宜変更してください。
$table_prefix  = 'wp_';   // 半角英数、アンダースコアが使用できます。

上級オプション

WordPress アドレス (URL)

WordPress バージョン 2.2 から追加された新しい wp-config.php オプションとして、WP_SITEURL があります。これにより「WordPress アドレス (URL)」を定義できます。ここで定義する値は、WordPress のコアファイルが存在する URL です。http:// の部分は含め、末尾にスラッシュ "/" は入れないでください。wp-config.php でこの値を定義すると、wp_options テーブルoption_value siteurl にセットされ、管理パネル > 設定 > 一般設定画面の「WordPress アドレス (URL)」欄は無効となります。

例えば、"example.com" というドメイン名の "wordpress" というディレクトリの中に WordPress を設置した場合、WP_SITEURL は次のように定義します。

define('WP_SITEURL', 'http://www.example.com/wordpress'); 

ブログアドレス (URL)

WP_HOMEバージョン 2.2 で追加された wp-config.php オプションです。これにより「ブログアドレス(URL)」を定義できます。これは、あなたの WordPress ブログに訪問する人がブラウザに入力する URL です。http:// の部分は含め、末尾にスラッシュ "/" は入れないでください。wp-config.php でこの値を定義すると、wp_options テーブルoption_value home にセットされ、管理パネル > 設定 > 一般設定画面の「ブログアドレス (URL)」欄は無効となります。

define('WP_HOME', 'http://www.example.com/wordpress'); 

Giving WordPress Its Own Directory の設定を行なっている場合は、次の例のようになります。ドキュメントルートディレクトリに index.php を置くことも忘れないでください。

define('WP_HOME', 'http://www.example.com'); 

デバッグ

define('WP_DEBUG', true);
define('WP_DEBUG', false);

The WP_DEBUG option, added in WordPress Version 2.3.1, controls the display of some errors and warnings. If this setting is absent from wp-config.php, then the value is assumed to be false. Note that the true and false values are not set in apostrophes (').

In Wordpress versions since 2.3.2, database errors are printed only if WP_DEBUG is set to true. In earlier versions, database errors were always printed. (Database errors are handled by the wbdb class and are not affected by PHP's error settings.)

In WordPress version 2.5, setting WP_DEBUG to true also raises the error reporting level to E_ALL and activates warnings when deprecated functions or files are used; otherwise, WordPress sets the error reporting level to E_ALL ^ E_NOTICE ^ E_USER_NOTICE.

PHP への割り当てメモリの増大

Also released with Version 2.5, the WP_MEMORY_LIMIT option allows you to specify the maximum amount of memory that can be consumed by PHP. This setting may be necessary in the event you receive a message such as "Allowed memory size of xxxxxx bytes exhausted".

This setting increases PHP Memory only for WordPress, not other applications. By default, WordPress will attempt to increase memory allocated to PHP to 32MB (code is at beginning of wp-settings.php), so the setting in wp-config.php should reflect something higher than 32MB.

Please note, this setting may not work if your host does not allow for increasing the PHP memory limit--in that event, contact your host to increase the PHP memory limit. Also, note that many hosts set the PHP limit at 8MB.

Increase PHP Memory to 64MB

define('WP_MEMORY_LIMIT', '64MB');

Increase PHP Memory to 96MB

define('WP_MEMORY_LIMIT', '96MB');

キャッシュ

The WP_CACHE setting, if true, includes the wp-content/advanced-cache.php script, when executing wp-settings.php.

define('WP_CACHE', true); 

Custom User and Usermeta Tables

CUSTOM_USER_TABLE and CUSTOM_USER_META_TABLE are used to designated that the user and usermeta tables normally utilized by WordPress are instead, these values.

define('CUSTOM_USER_TABLE', 'my_user_table');
define('CUSTOM_USER_META_TABLE', 'my_usermeta_table');

言語および言語ディレクトリ

WPLANG は、言語翻訳ファイル(.mo)の名前を定義します。プラグインやテーマの言語ファイル名の部分にも WPLANG の値が使われます。 LANGDIR は、WPLANG .mo ファイルが存在するディレクトリを定義するものです。LANGDIR が定義されていなければ、WordPress は wp-content/languageswp-includes/languages の順に .mo ファイルを 探します。

define('WPLANG', 'de_DE');
define('LANGDIR', 'mylanguagedirectory');

最新の WordPress 日本語版では、WPLANG の初期値は 'ja' です。

// こちらを変更することで WordPress をローカライズできます。対応する
// mo ファイルを wp-content/languages 以下にアップロードしてください。
// 例えば、ja.mo を wp-content/languages にアップロードし、WPLANG に 'ja'
// と設定すると、日本語 (UTF-8) がサポートされます。
// (訳注: このパッケージでは日本語 (UTF-8) が設定されているので、そのままお使いの場合は
// 変更する必要はありません。)
define ('WPLANG', 'ja');

保存する前にダブルチェックを

Be sure to check for leading and/or trailing spaces around any of the above values you entered, and DON'T delete the single quotes!

Before you save the file, be sure to double-check that you have not accidentally deleted any of the single quotes around the parameter values. Be sure there is nothing after the closing PHP tag in the file. The last thing in the file should be ?> and nothing else. No spaces.

To save the file, choose File > Save As > wp-config.php and save the file in the root of your WordPress install. Upload the file to your web server and you're ready to install WordPress!

複数ブログ設置時の wp-config.php

Multiple WordPress blogs require special handling of their configuration files. Check Installing Multiple Blogs/en for more information.

変更履歴

  • 2.5 : SECRET_KEY, WP_MEMORY_LIMIT が設定可能になりました。
  • 2.3.1 : WP_DEBUG が設定可能になりました。
  • 2.2 : DB_CHARSET, DB_COLLATE, WP_SITEURL, WP_HOME が設定可能になりました。

最新英語版: WordPress Codex » Editing_wp-config.php最新版との差分

このページ「wp-config.php の編集」は未翻訳です。和訳や日本語情報を加筆してくださる協力者を求めています

この項目「wp-config.php の編集」は、翻訳チェック待ちの項目です。加筆、訂正などを通して、Codex ドキュメンテーションにご協力下さい。