Blog Ping の仕様

Blog を使うようになって久しいが、Blog ping の仕組みをまったく知らないことに気がついて、昨日から調べている。探し方が悪いのか、意外とまとまったわかりやすい資料が無くて苦労している。

MyBlog.jp のインターフェースだと、記事自体の内容も送るので、てっきり ping もそうなっているのかと思っていたら、どうもそうではない。送るのはあくまでタイトルと、Blog の URI だけだ。RDFやRSSのURIではない。Blog のURI である。

Ping を受け取ったサーバーは、そのURIからページをGETして、そのページの中から、

<link rel=\”alternate\” type=\”application/rdf+xml\” title=\”RDF\” href=\”http://www.sakimura.org/modules/wordpress/wp-rdf.php\” />
<link rel=\”alternate\” type=\”application/rss+xml\” title=\”RSS 2.0\” href=\”http://www.sakimura.org/modules/wordpress/wp-rss2.php\” />
<link rel=\”alternate\” type=\”text/xml\” title=\”RSS .92\” href=\”http://www.sakimura.org/modules/wordpress/wp-rss.php\” />
<link rel=\”alternate\” type=\”application/atom+xml\” title=\”Atom 0.3\” href=\”http://www.sakimura.org/modules/wordpress/wp-atom.php\” />

のような行を探し、自分の欲するリソースファイルをゲットするという流れのようだ。

Ping 自体はPOSTで送られ、そのフォーマット自体は以下のような形である。

POST /RPC2 HTTP/1.0
User-Agent: Radio UserLand/7.1b7 (WinNT)
Host: rpc.weblogs.com
Content-Type: text/xml
Content-length: 250

< ?xml version=\”1.0\”?>
<methodcall>

<methodname>weblogUpdates.ping</methodname>
<params>
<param>
<value>これがタイトルです。</value>
</param>
<param>
<value>http://www.example.com/blogpage.html</value>
</param>
</params>
</methodcall>

レスポンスは:

HTTP/1.1 200 OK
Connection: close
Content-Length: 333
Content-Type: text/xml
Date: Sun, 30 Sep 2001 20:02:30 GMT
Server: UserLand Frontier/7.0.1-WinNT

< ?xml version=\”1.0\”?>
<methodresponse>
<params>
<param>
<value>
<struct>
<member>
<name>flerror</name>
<value>
<boolean>0</boolean>
</value>
</member>
<member>
<name>message</name>
<value>Thanks for the ping.</value>
</member>
</struct>
</value>
</param>
</params>
</methodresponse>

のような形。

実際に blog.goo.ne.jp に ping を打ってみる。すると、apache の log には以下のように見える。

(ここで ping を送信)
blog.goo.ne.jp – – [22/Feb/2005:00:54:55 +0900] \”GET /modules/wordpress/index.php
HTTP/1.1\” 200 63328 \”-\” \”-\”
blog.goo.ne.jp – – [22/Feb/2005:00:54:55 +0900] \”GET /modules/wordpress/wp-rss2.ph
p HTTP/1.1\” 200 27660 \”-\” \”-\”

まとめると、

\"Blog

のような形になっている。

ちなみに、Xoops 用の WordPress ME module では、この PING は、wp-admin/functions.php の中の、function pingWeblogs($blog_ID = 1) によって行われている。

さて、次は Trackback か…。

「Blog Ping の仕様」への4件のフィードバック

  1. その後調べたところ、myblog などでは 1 の uri に index.rdf をくっつけたものを取りに来るようだ。どうりで更新されないわけだ。

  2. Pingについて
    wordpress内に[RSS]のマークがないことに気づき、いろいろ調べている。
    わかりしだいご報告します。

  3. 私は見た目の問題で表示していませんが、Xoopsのブロック管理でWordpressの関連ブロックの詳細画面を開くと、RSSアイコンの表示・非表示を制御することができます。お試しください。

  4. 今日は仕事だ!!
    5月2日。
    今日は仕事だ。
    GWの真ん中だけどね。
    でも仕事なのさ。
    なんだろう。。。会社に人が少ない。。。
    もう始業時間過ぎてるのに始業した感じがしない。
    こりゃまいったね。
    「気が乗らない」とはまさにこのこと。

    春だからかな。。。

    まぁ一日がんばろう

my weblog へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください