MEMORVA
ウェブサイト制作 HTML/JavaScript モバイル Linux 開発 サイト運営

PING送信の仕様 - XMLの書式、RSS配信、PINGサーバとは、ブログ・ホームページ

更新:

ブログなどで使われているPING送信の仕様についての解説です。

PINGサーバとは

各ブログサービスでは、記事を追加する際、PINGサーバに更新情報を送信しています。
PINGサーバとは、各ブログから送られてきた更新情報を受信しているサーバ(サイト)です。


PINGの仕様

PINGは、サイトの「タイトル」と「トップページのURL」をXML形式でPINGサーバへ送信します。
送信するデータには、記事の内容は含みません。
つまり、更新内容を通知するのではなく、更新したサイトのURLを通知しているだけです。
これは、世界共通の仕様です。

PINGを送信後、PINGサーバがサイトのURLへ通信し、そのHTMLソースから
<link rel="alternate" type="application/rss+xml" title="RSS" href="RSSのURL" />
の部分を読み取り、RSSにある更新内容をPINGサーバに反映します。
送信するXMLの書式は、以下のようになっています。
<?xml version="1.0" encoding="UTF-8"?>
<methodCall>
<methodName>weblogUpdates.ping</methodName>
<params>
<param><value>自分のサイトのタイトル</value></param>
<param><value>自分のサイトのURL</value></param>
</params>
</methodCall>
正しく送信できた場合は、PINGサーバからXML形式で応答があります。
PHPでPINGサーバへPINGを送信する方法の1つにfsockopenを使う方法があります。


PINGサーバ、ブログ検索

PINGサーバはたくさんありますが、主なPINGサーバにだけPINGを送信すれば十分だと思います。
2010年以前、PINGサーバはたくさんありましたがいくつか閉鎖されました。
Googleにだけ送れば十分だと思います。

  1. http://blogsearch.google.co.jp/ping/RPC2
    http://blogsearch.google.com/ping/RPC2 は上記と同じなので、どちらか一方でOK。
  2. http://blog.goo.ne.jp/XMLRPC
  3. http://ping.fc2.com/

PING送信後、検索エンジンのクローラー(Bot)がサイトを巡回するようになります。


PINGサーバに更新情報が反映されない場合

昔は、PINGサーバへ更新情報を送信すると多少メリットがありましたが、 スパムの増加の影響などにより、現状あまりメリットはないように感じます。
またPINGサーバは、スパム対策として、更新情報を素直に反映しないようになっています。
PINGサーバに更新情報が反映されない原因として以下のようなことが考えられます。

PINGサーバ側の仕様の場合
PING送信者側に問題がある場合
上記のような理由で更新情報が反映されない場合でも、PINGサーバは「受信しました」というメッセージを返すことがあります。

はてなブックマーク X Bluesky