記事掲載日:2013年3月16日 RSSの使い方  作りました。RSS。でもRSSリーダの中でもシェアの大きいGoogleリーダーがサービス終了するらしいです。タイミング悪ぅ。モチベーションがひどいことになってますけどとりあえず「RSSって何?」という疑問にだけは答えることにします。
 RSSとは、文章の一つのフォーマットです。このフォーマットに従って記述された文章はRSSリーダーによって解釈することができ、Webサイトの更新情報やその内容などを自動的に検出することができるようになります。文章の一つとはいえ、人間には理解しにくい内容なのでRSSリーダーがないとRSSはほとんど意味を成しません。
 つまりどういうことか。RSSリーダーを使っていない人には全く意味がないということだわな。なので使っていない人もこれを機会に使い始めてみるといいでしょう。RSSリーダーはブラウザに標準装備されていたり、Webサービスとして提供されていたりと様々なものがあります。ここではIEに付属しているRSSリーダーを紹介します。私が使っているのはIE9なので9用の説明になりますが別のバージョンや別のブラウザでも似たようなもののはずですので適当に読み替えてご覧ください。

 一番簡単な方法はRSSで記述された文章に直接アクセスし、上の方にある「このフィードを購読する」を押して登録することです。本サイトのRSSはここです。良くわからなければ試しにやってみるといいでしょう。感覚としてはブックマークに登録するのと同じです。
 別の方法としては、メニューバーの「ツール」から「フィード探索」を選択してRSSを探す方法があります。この方法だと本サイトの場合トップページからしか行えませんのでトップページに移動してからフィード探索をして登録することになります。「RSS_2.0 tano-sei.com」というのが本サイトのフィードの名前です。この名前がフィード探索で表示されたら、後は名前をクリックすればRSSで記述された文章が表示されるので購読を押して登録すればOKです。
 後は放っておいても一定のペースでRSSリーダーが勝手に更新確認をしてくれるようになるので手動での確認は必要なくなります。ただ、IEの場合更新確認のペースが1日1回なので遅く感じることもあるかもしれません。もっと短い間隔で確認させるようにすることもできるますが、これ以上は長くなるので自分でいろいろ調べてみてください。


開発手記  ここからはちょっと制作過程でハマった話を書きます。他にもはまってる人がいそうなので。

 RSSフィードを作るだけなら何てことはないのですが、RSSフィードの作成をプログラムで自動化しないとRSSフィードの更新が遅れたり忘れたりと、RSSとしての役割を十分に果たせなくなってしまいます。そこで本サイトでは、PHPでRSSフィードを作成するプログラムを作り、それをCronで1時間ごとに実行するという手法でRSSフィードの更新を行っているのですが、このプログラムがなかなか思うように動いてくれませんでした。
 ブラウザでアクセスした場合は正しくPHPが実行されるのですが、Cronで実行した場合は正しく実行されない。具体的にはfopen()でファイルオープンに失敗してRSSフィードの更新ができずにプログラムが終了するというもの。ファイルオープンの失敗ってことはパスが通ってないのが原因じゃないかと思い、エラーログから"No such file or directory"(訳:そんなものは存在しない)の文字を探してみると…ない。原因が分からずここで詰まりました。
 結局原因は、やはりパスが通ってなかった事でした。CronからPHPを実行するときはフルパスで記述するというのは分かっていたのですが、PHPの中でもファイルへのパスはフルパスで記述しなくてはならないというのを見落としていました。ブラウザからアクセスして実行したときと、Cronから実行したときではドキュメントルートが異なるために相対パスでは正しく動作しないという理屈みたいです。てことはたぶんファイルパスで指定しないでhttp://~みたいな感じでURLを指定してやればドキュメントルートとか面倒くさいこと考えなくても動作したのかな?まー私はプログラムなんて動けばいいんだよ派なので細かいことを考えるのは物好きな人に任せておきます。終わり。