RSS フィードをメールで受け取る (2) Basic 認証のある場合は?

RSS をメールで配信したり [2005-09-27],メールを RSS で配信したり [2005-02-23],自分でも何をやってるんだかという感じですが,今回は前者の話の続き.



以前から hail2u さんの "RSS Headline Mailer"

を愛用して,一部の RSS フィードをメールで受け取っている.これが威力を発揮するのが,例えばイントラネットで配信されている RSS だ.当然 Bloglines からは fetch できないから,イントラネット内でこのスクリプトを回して RSS を取得し,メールで自分宛に送っている.



ただ,ホスト認証をかけてる RSS はこれでいいんだけど,Basic 認証をかけていてパスワードを入れないとアクセスできない RSS が取得できなくて困ってたんだよな.LWP::UserAgent で credentials を使うべきかなーとか (ちょっと前に LWP まわりをいじったりしてた [2006-12-19] のはそのため),いやそれこそ Plagger の出番じゃないのかとか,いろいろ考えつつ,忙しさにかまけて放置してたんだけど,実はものすごく単純な方法で解決することを知った.

http://username:password@example.com/path/to/feed

でいけるとは…知らなんだ…orz



この書式は今回のケースに限ったことではなく,Basic 認証一般に当てはまる.だから恐ろしいことに,例えばこの書式を使えば Bloglines からも認証がかかったフィードが購読できてしまうらしい.もちろんそんな危険なことはやりませんけど.

ちなみに,Apacheアクセスログusername と password が残るのかなーと不安に思って調べてみたところ,別に残らなかったので一安心.普通にブラウザから Basic 認証で入った時と同様のログになる.



追記: 上記,username はデフォルトで残る.これも普通に Basic 認証で入った時と同様.