Jetpackが連携できない場合の対処方法【site_inaccessible】

  • 投稿 : 2016-10-09
http://jetpack.me/support/debug/

上記にブログのトップページを入力して、エラーメッセージを再度確認してみてください。
curlコマンドで確認する方法もありますが、分からない人はcurl コマンドを使う必要はないと思います。

[HTTP 403]とかそのあたりが判明すれば、典型的なケースは解決方法がわかります。
Jetpackですが、Wordpressの「xmlrpc.php」を使うようで、これが海外IPから利用できるようになっていないと連携に失敗します。

403エラー

Jetpack を利用するには、サイトが公開されていて、アクセス制限がかかっていない必要があります: site_inaccessible
エラー詳細:
The Jetpack server was unable to communicate with your site [HTTP 403].
Ask your web host if they allow connections from WordPress.com.
If you need further assistance, contact Jetpack Support: http://jetpack.me/support/

xmlrpc.phpが全IPから拒否されている、海外IPから拒否されているケースです。

エックスサーバーなどのレンタルサーバーでは、標準でxmlrpc機能を海外IPからアクセスできないようにしているケースがあります。その場合は、その機能をOFFにしないとダメです。

トピック: [解決済] Jetpackが入りません!! « サポートフォーラム — WordPress

あとは、Wordpressのセキュリティ系のプラグインを導入している人は、そのプラグインで拒否していることもあるので疑わしいプラグインを一時停止してから確認してみれば原因追及しやすいと思います。

海外IPからの拒否かどうかの簡易判定

http://blog.example.com/xmlrpc.php

ブログトップのアドレスに「/xmlrpc.php」を付与してブラウザからアクセスしてみてください。標準設定では「XML-RPC server accepts POST requests only.」というメッセージがブラウザに表示されるはずです。これが表示されて、[HTTP 403]が出てる場合は、海外IPからだけ拒否されてると判断できるかと思います。

ブラウザからのアクセスも、403のエラーを返していたら、全IPで拒否されてます。

レンタルサーバーの設定個所

WordPressセキュリティ設定 | レンタルサーバー【エックスサーバー】
サポートマニュアル /格安・大容量レンタルサーバーのミニバード

404エラー

Jetpack を利用するには、サイトが公開されていて、アクセス制限がかかっていない必要があります:
エラー詳細:
The Jetpack server was unable to communicate with your site [HTTP 404].
Ask your web host if they allow connections from WordPress.com. If you need further assistance, contact Jetpack Support: http://jetpack.me/support/

http://blog.example.com/xmlrpc.php

ブログトップのアドレスに「/xmlrpc.php」を付与してブラウザからアクセスしてみてください。標準設定では「XML-RPC server accepts POST requests only.」というメッセージがブラウザに表示されるはずです。こういうのが表示されないで、404と表示される場合は、xmlrpc.phpファイルが存在するかどうかを確認してみてください。

そのほかの原因もあるようですが、解決方法はわかりません。

この問題を解決するために、[Jetpack]には「ローカル開発モード」と呼ばれる機能が用意されています。
使い方は簡単で、WordPress の初期設定ファイル[wp-config.php]の任意の場所に、以下のコードを記述するだけ。
define( 'JETPACK_DEV_DEBUG', true );
【WordPress】ローカル環境で[Jetpack]を導入する際の「ローカル開発モード」について。 - ONZE

ローカル環境での動作確認とかの場合は、上記のようにすればOKのようです。

500エラー

Jetpack を利用するには、サイトが公開されていて、アクセス制限がかかっていない必要があります: site_inaccessible
エラー詳細: The Jetpack server was unable to communicate with your site [HTTP 500]. Ask your web host if they allow connections from WordPress.com. If you need further assistance, contact Jetpack Support: http://jetpack.com/support/

理由としては、
php5.5ではphp-commonに含まれていたxml.soモジュールが、5.6から含まれなくなっているため、別途php-xmlをインストールする必要がある。
といったものでした。
PHP - wordpressのjetpackプラグインが500エラーで連携出来ない(37753)|teratail

レアなケースでが、500エラーになる場合があります。xmlrpc.php実行時のPHPエラーだと思われますのでレンタルサーバーを借りている人には起こりえないと思います。

その他

Communication error
We were unable to make an XML-RPC request to your website. Please make sure that XML-RPC is turned on and that Jetpack is installed, activated and connected with your WordPress.com account.

Could not validate security token
We were unable to validate a security token for Jetpack communication. Please try disconnecting Jetpack from your WordPress.com account, and connecting it again.

今回の問題の原因は、WordPress.com 側で共用サーバーの一定の IP アドレスをブロックしていたことでした。この IP アドレスから Jetpack を通し、WordPress.com への過剰なアクセスとリソースの乱用が確認されたためです。
解決策としてロリポップ様担当者の方にブロックの元となった問題サイトに警告をしていただき、ブロックの解除を行いました。
トピック: [解決済] Jetpack WordPress.comと連携ができません « サポートフォーラム

トピック: [解決済] Jetpack WordPress.comと連携ができません « サポートフォーラム

その他のケースでは、Jetpack 側(wordpress.com)側から、そのレンタルサーバーのIPが拒否されてるケースです。メッセージとかも違いますので、上記のようなメッセージが出た時はこのあたりを疑うべきだと思います。



スポンサーリンク