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

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

「WordPress ネットワークのデバッグ」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(最新英語版を反映 [en:Debugging a WordPress Network] 21:45, 20 July 2017‎ Mchev版)
(和訳完了 [en:Debugging a WordPress Network] 21:45, 20 July 2017‎ Mchev版)
3行目: 3行目:
 
</div>
 
</div>
  
このページをご覧になっているということは、[[Glossary#Network|WordPress ネットワーク]]のエラーに遭遇していらっしゃるのかもしれません。この問題は WordPress が[[データベース概要|データベース]]のグローバルテーブルを見つけられない場合に起こります。
+
このページに来たということは、恐らく[[用語集#.E3.83.8D.E3.83.83.E3.83.88.E3.83.AF.E3.83.BC.E3.82.AF|WordPress ネットワーク]]でエラーが表示されたのでしょう。WordPress ネットワークのエラーは WordPress が[[データベース概要|データベース]]のグローバルテーブルを見つけられない場合に起こります。
  
一部の共有サーバーでは、WordPress のネットワーク機能が使えないようになっています。[[Create A Network|ネットワークの作成]]の'''前'''にお使いのサーバーが技術的な要件を満たしているか確認するのが最善でしょう。
+
一部の共有サーバーでは、WordPress のネットワーク機能を使えません。ベストプラクティスとして [[Create A Network|ネットワークの作成]]の'''前'''に、使用するサーバーが技術要件を満たすことを確認してください。
  
 
<div id="If_You_just_installed_your_network">
 
<div id="If_You_just_installed_your_network">
11行目: 11行目:
 
</div>
 
</div>
  
[[Editing wp-config.php|wp-config.php]] ファイルで以下を確認して下さい。
+
[[Editing wp-config.php|wp-config.php]] ファイルで以下を確認してください。
 
* データベース接続情報が正しいかどうか
 
* データベース接続情報が正しいかどうか
 
* <code>SUBDOMAIN_INSTALL</code> 定数
 
* <code>SUBDOMAIN_INSTALL</code> 定数
32行目: 32行目:
 
<pre>require_once(ABSPATH . 'wp-settings.php');</pre> より後にコードがあれば、「 編集が必要なのはここまでです ! 」のコメント行よりも上に移動してください。
 
<pre>require_once(ABSPATH . 'wp-settings.php');</pre> より後にコードがあれば、「 編集が必要なのはここまでです ! 」のコメント行よりも上に移動してください。
  
=== Mod_rewrite not working ===
+
=== mod_rewrite が動作しない<span id="mod_rewrite_not_working"></span> ===
  
Main site works but 404 errors show up when trying to access added child subdomain sites.
+
メインのサイトは動作するが、追加した子のサブドメインサイトにアクセスすると 404 エラーが表示される場合、Ubuntu 10.04 LAMP apache2 インストールでは次の手順が必要です。
Ubuntu 10.04 LAMP apache2 install needs these steps:
+
 
 +
<pre>
 
   sudo a2enmod rewrite
 
   sudo a2enmod rewrite
 
   sudo nano /etc/apache2/sites-avail/default
 
   sudo nano /etc/apache2/sites-avail/default
and change in two places the 'AllowOverride None' to 'AllowOverride all'
+
</pre>
  /etc/init.d/apache2 restart
+
 
to restart apache2. Note that on more modern versions of Ubuntu the following syntax is preferred (for restarting services such as Apache - also note that in either case you may need to use prepend ''sudo''):
+
そして2箇所の 'AllowOverride None' 'AllowOverride all' に変更し、次のコマンドで apache2 を再起動してください。
 +
 
 +
<pre>
 +
/etc/init.d/apache2 restart
 +
</pre>
 +
 
 +
注意: 最新の Ubuntu であれば Apache などのサービスの再起動には以下のコマンドを使用してください。<i>sudo</i> を前につける必要があるかもしれません。
 +
 
 +
<pre>
 
   service apache2 restart
 
   service apache2 restart
 +
</pre>
  
 
<div id="Check_the_database">
 
<div id="Check_the_database">
47行目: 57行目:
 
</div>
 
</div>
  
上記がすべて正しい場合、データベース本体を調べて[[データベース概要#.E3.83.9E.E3.83.AB.E3.83.81.E3.82.B5.E3.82.A4.E3.83.88.E3.83.86.E3.83.BC.E3.83.96.E3.83.AB.E4.B8.80.E8.A6.A7|追加のネットワークテーブル]]が全て作成されているか見てみましょう。追加テーブルは以下のとおりです。
+
以上がすべて正しい場合、データベース本体を調べて[[データベース概要#.E3.83.9E.E3.83.AB.E3.83.81.E3.82.B5.E3.82.A4.E3.83.88.E3.83.86.E3.83.BC.E3.83.96.E3.83.AB.E4.B8.80.E8.A6.A7|追加のネットワークテーブル]]がすべて作成されていることを確認してください。追加テーブルは以下のとおりです。
  
 
*wp_blogs  
 
*wp_blogs  
56行目: 66行目:
 
*wp_sitemeta
 
*wp_sitemeta
  
If you have these DB tables or added them manually but wp_site and/or wp_blogs is empty, you may have to run some SQL queries to insert rows for your main site. Be sure to adjust the table prefixes, domains, dates, username, and other parts of the queries below to match your install.
+
テーブルが存在する、あるいは手動で追加した場合、次に wp_site テーブル、wp_blogs テーブルのレコードを確認します。どちらか、あるいは両方が空の場合、次の SQL クエリを使用して、テーブルにサイトの情報を挿入する必要があります。注意: テーブル接頭辞、ドメイン名、ユーザー名、その他の箇所を環境に合わせて変更してください。
  
 +
<pre>
 
     INSERT INTO wp_site VALUES(1,'domain.com','/');  
 
     INSERT INTO wp_site VALUES(1,'domain.com','/');  
     # change domain.com to the full domain of your original site and / to the path
+
     # domain.com はサイトの完全ドメイン名で置換。/ はパスで置換
 
      
 
      
 
     INSERT INTO wp_blogs VALUES(1, 1, 'domain.com', '/', '2015-01-01', '2015-01-01', 1, 0, 0, 0, 0, 0);
 
     INSERT INTO wp_blogs VALUES(1, 1, 'domain.com', '/', '2015-01-01', '2015-01-01', 1, 0, 0, 0, 0, 0);
     # change domains.com and / to domain and path of your site. Change dates if you want.
+
     # domains.com / はサイトのドメインとパスで置換。必要であれば日付を変更
 
      
 
      
 
     INSERT INTO wp_sitemeta VALUES('', 1, 'site_admins', 'a:1:{i:1;s:5:"admin";}');
 
     INSERT INTO wp_sitemeta VALUES('', 1, 'site_admins', 'a:1:{i:1;s:5:"admin";}');
     # Sets the admin user as a Super Admin. Change "admin" to your user_login.
+
     # 管理ユーザーを Super Admin として設定。"admin" はログインアカウントで置換
     # Change "s:5" to "s:#" where # is the number of characters in user_login.
+
     # "s:5" "s:#" で置換。このとき # にはログインアカウントの文字数を入れる
 +
</pre>
  
 
<div id="If_new_site_creation_suddenly_stopped_working">
 
<div id="If_new_site_creation_suddenly_stopped_working">
72行目: 84行目:
 
</div>
 
</div>
  
上記のデータベースを確認して下さい。データベースサーバーの場所が移動されていないかどうか、もう一度確認しましょう。万が一移動されていた場合は、<code>wp-config.php</code> ファイルを更新します。
+
上で述べたデータベースを確認してください。データベースサーバーの場所が移動されていないかどうか、もう一度確認してください。移動されていた場合は、<code>wp-config.php</code> ファイルを更新してください。
  
 
<div id="Other_lesser-known_issues">
 
<div id="Other_lesser-known_issues">
78行目: 90行目:
 
</div>
 
</div>
  
データベースユーザーに対し、権限が'''すべて'''与えられているか確認してください。
+
データベースユーザーに対し、'''すべて'''の権限が与えられているかを確認してください。
  
また、一部の WordPressMU からバージョン 3.0 以降へのアップグレードした場合で、サイト追加の際にエラーが発生するケースがありました。これは、データベースの照合に関する問題と判明しました。
+
また、WordPressMU からバージョン 3.0 以降へアップグレードした際、一部のユーザーで、サイト追加時にエラーが発生しました。原因は、データベースの照合に関する問題でした。
 
+
Check that the .htaccess instructions are not throwing up errors in the Apache logs.
+
 
+
Like this one:
+
  
 +
.htaccess 命令が Apache ログにエラーを出力していないことを確認してください。
 +
例:
 +
<pre>
 
  Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden:
 
  Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden:
 
+
</pre>
This will result in a Network install appearing to fail and may show WP errors like
+
この場合、ネットワークのインストールは失敗し、次の WordPress エラーが表示されます。
 
+
<pre>
 
  One or more database tables are unavailable. The database may need to be repaired.
 
  One or more database tables are unavailable. The database may need to be repaired.
 +
</pre>
  
 
<div id="Related_Articles">
 
<div id="Related_Articles">
100行目: 112行目:
 
=== 外部リンク ===
 
=== 外部リンク ===
 
</div>
 
</div>
* [http://wordpress.org/support/forum/multisite WordPress › Support » Multisite] : 英語版フォーラムのマルチサイトトピック
+
* [https://ja.wordpress.org/support/forum/multisite/ サポート > マルチサイト] : フォーラムのマルチサイトトピック
  
 
[[Category:ネットワーク]]
 
[[Category:ネットワーク]]
 
[[Category:UI Link]]
 
[[Category:UI Link]]
 
  
 
{{原文|Debugging_a_WordPress_Network|161183}} <!-- 21:45, 20 July 2017‎ Mchev版 -->
 
{{原文|Debugging_a_WordPress_Network|161183}} <!-- 21:45, 20 July 2017‎ Mchev版 -->
  
 
{{DEFAULTSORT:}}
 
{{DEFAULTSORT:}}
[[Category:WPMU]]
 
[[Category:UI Link]]
 
  
 
[[en:Debugging a WordPress Network]]
 
[[en:Debugging a WordPress Network]]

2017年7月29日 (土) 13:53時点における版

このページに来たということは、恐らく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最新版との差分