• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

WordPress ネットワークのデバッグ

提供: WordPress Codex 日本語版
移動先: 案内検索

このページに来たということは、恐らくWordPress ネットワークでエラーが表示されたのでしょう。WordPress ネットワークのエラーは WordPress がデータベースのグローバルテーブルを見つけられない場合に起こります。

一部の共有サーバーでは、WordPress のネットワーク機能を使えません。ベストプラクティスとして ネットワークの作成に、使用するサーバーが技術要件を満たすことを確認してください。

ネットワークインストール直後の場合

wp-config.php ファイルで以下を確認してください。

  • データベース接続情報が正しいかどうか
  • SUBDOMAIN_INSTALL 定数
  • MULTISITE 定数
  • $base 変数
  • テーブル接頭辞
  • 以下のコードの下には何も含めないこと
/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
        define('ABSPATH', dirname(__FILE__) . '/');

/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');
require_once(ABSPATH . 'wp-settings.php');
より後にコードがあれば、「 編集が必要なのはここまでです ! 」のコメント行よりも上に移動してください。

mod_rewrite が動作しない

メインのサイトは動作するが、追加した子のサブドメインサイトにアクセスすると 404 エラーが表示される場合、Ubuntu 10.04 LAMP apache2 インストールでは次の手順が必要です。

   sudo a2enmod rewrite
   sudo nano /etc/apache2/sites-avail/default

そして2箇所の 'AllowOverride None' を 'AllowOverride all' に変更し、次のコマンドで apache2 を再起動してください。

/etc/init.d/apache2 restart

注意: 最新の Ubuntu であれば Apache などのサービスの再起動には以下のコマンドを使用してください。sudo を前につける必要があるかもしれません。

   service apache2 restart

データベースの確認

以上がすべて正しい場合、データベース本体を調べて追加のネットワークテーブルがすべて作成されていることを確認してください。追加テーブルは以下のとおりです。

  • wp_blogs
  • wp_blog_versions
  • wp_registration_log
  • wp_signups
  • wp_site
  • wp_sitemeta

テーブルが存在する、あるいは手動で追加した場合、次に wp_site テーブル、wp_blogs テーブルのレコードを確認します。どちらか、あるいは両方が空の場合、次の SQL クエリを使用して、テーブルにサイトの情報を挿入する必要があります。注意: テーブル接頭辞、ドメイン名、ユーザー名、その他の箇所を環境に合わせて変更してください。

    INSERT INTO wp_site VALUES(1,'domain.com','/'); 
    # domain.com はサイトの完全ドメイン名で置換。/ はパスで置換
    
    INSERT INTO wp_blogs VALUES(1, 1, 'domain.com', '/', '2015-01-01', '2015-01-01', 1, 0, 0, 0, 0, 0);
    # domains.com と / はサイトのドメインとパスで置換。必要であれば日付を変更
    
    INSERT INTO wp_sitemeta VALUES('', 1, 'site_admins', 'a:1:{i:1;s:5:"admin";}');
    # 管理ユーザーを Super Admin として設定。"admin" はログインアカウントで置換 
    # "s:5" は "s:#" で置換。このとき # にはログインアカウントの文字数を入れる

突然 新規サイト追加ができなくなった場合

上で述べたデータベースを確認してください。データベースサーバーの場所が移動されていないかどうか、もう一度確認してください。移動されていた場合は、wp-config.php ファイルを更新してください。

その他のあまり知られていない問題

データベースユーザーに対し、すべての権限が与えられているかを確認してください。

また、WordPressMU からバージョン 3.0 以降へアップグレードした際、一部のユーザーで、サイト追加時にエラーが発生しました。原因は、データベースの照合に関する問題でした。

.htaccess 命令が Apache ログにエラーを出力していないことを確認してください。 例:

 Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden:

この場合、ネットワークのインストールは失敗し、次の WordPress エラーが表示されます。

 One or more database tables are unavailable. The database may need to be repaired.

最新英語版: WordPress Codex » Debugging_a_WordPress_Network最新版との差分