ヘルプ

本サイトについて

本サイトは、RSSリーダーのWebアプリです。スタンドアローンである通常のRSSリーダーとは違い、Web上での実装の為、同一タグを持つRSSを他ユーザーと共有する事が出来ます。これにより、RSSの欠点である、自分でRSSソースを探す必要があり、話題に広がりを欠く点を補います。また、各RSS提供者様には、検索エンジンに頼らず、自身で指定したタグでの広報能力を提供します。

本サイトでは、一般のニュースリーダーと同様、RSSをフローとして用います。一般的にRSSリーダーはストックとして実装され、全ての記事を追跡できる反面、まめに読まないと未読が山積してしまう問題がありました。この点をフローにして解決しておりますので、本サイトは通常のストック型RSSリーダーとして用いるには向いていません。あらかじめご了承ください。

対応サイトについて

各RSS提供サイトの使用規約で禁止されてない場合は、通常のブラウザ操作で各RSSを閲覧出来ます。ただし、多くの大手サイトでは規約で禁止されており、これらのRSSを閲覧するには後述のCORSセキュリティ迂回対応策が必要です。

タグ共有について

本サイト経由でアクセスされたRSSは、タグを介して共有されます。ただし登録/更新は誰かがアクセスする事によって為されるため、誰もアクセスした事のないRSSや、最近アクセスされてないRSSは表示されません。(現在の設定では3日間)

セキュリティについて

本サイトは機能上、他サイトで生成されたRSSをそのまま表示する為、通常のサイトと比べセキュリティが非常に甘くなっております。一般的にはこのような事はCORSセキュリティ違反であり、単純にはRSSリーダーはWebアプリとしては実装出来ません。本サイトはこれに対してキャッシュ付きプロキシを用意し、セキュリティ制限を意図的に迂回して実装しています。このため、その代償として、セキュリティが非常に甘くなっております。

具体的には、任意の他サイトを開かされるのと同程度の危険性があります。本サイトでタグによってRSSを共有する場合、表示されるサイトをユーザーは予測出来ません。明示的に指名して除外する事は出来ますが、サイト名が判明しないと指名しようもないので、ユーザーが最初から指名除外する事は不可能です。そして、RSS内にJavaScriptが記述されていて、信用レベルが高く設定されている場合、そのJavaScriptも実行されてしまいます。デフォルトの信用レベルではJavaScriptは実行されませんが、この設定はローカルストレージ上に保持されている為、一度でも出所不明なJavaScriptを実行された場合、設定自体がそのJavaScriptにより変更され、信用レベルを上げられている可能性があります。従いまして、本サイトを使用する際には、

にして下さい。特にECサイト(Amazon等)や実名SNS等、重要な個人情報を利用しているブラウザ/プロファイルと分離するだけで、かなりの安全性を確保出来ます。また、危険性は主にJavaScriptによりますので、信用レベルを上げずに使用するのを推奨します。(RSS内のJavaScriptを実行しない設定で使う事を推奨します。個人的にはRSS内にJavaScriptを記述する意味が分かりませんが、今のところ遭遇したのはTwitterの物でしたので、規約によるものか、追跡目的だと思われます)

デフォルトでは自動判定で信用レベルを最低(0)または1にしています。信用レベル0ではHTMLをテキストとして表示し、タグがそのまま表示されます。自動判定が上手く行かずこのような状況になった場合、信用レベルを1に上げてhtmlを表示出来るようにして下さい。信用レベルはisTrustedパラメータで指定出来、以下のようになっています。

  1. 全てのタグを不許可。htmlが与えられた場合、タグそのものが表示される。ただし大半のサイトはRSSをテキストで提供しているのでこれで問題ない。(デフォルト)
  2. <script>以外のタグを許可、ただし全ての属性を削除。タグの表示だけは出来る。htmlを読むだけならこれで問題ない。(自動判定ONの時に選択されるときがある)
  3. <script>以外のタグを許可、ただしstyleとevent属性を削除。href属性は有効となり、画像やリンクが動作する。画像がある場合、RSS提供者からのユーザー追跡が可能になる。
  4. <script>以外のタグを許可。RSS提供者がstyleで透明にしたりeventを拾って送信したり出来るようになる。危険。
  5. 全てのタグを許可。RSS提供者がJavaScriptを使っての端末操作を全て出来るようになる。危険。

現実的には各サイトに合わせて0〜2で十分で、3以上は使う意味がないはずです。設定はRSS Dashboard上で変更出来ます。3以上を選ぶ場合はunlockを一旦押さなければ選択出来無いようになっています。

免責事項

本サイトは機能上、セキュリティが非常に甘くなりますので、必ず、普段使いとは別ブラウザ/プロファイルで使用してください。

本サイトを使用する/しないにかかわらず、一切の責任は負いません。

本サイトの方針等は予告無く変更する事があります。

未成年者が本サイトを使用するのは禁止します。

本サイトは、RSSリーダーのWebアプリであり、各サイトから提供されたRSSを表示しているだけです。本サイトでは各RSSは一切改変しておりません。内容については各RSSソースにお問い合わせ下さい。

使い方について

基本的な使い方

http://rssnews.sakura.tv/news/のようにしてnewsタグを含む記事を一覧するか、http://rssnews.sakura.tv/rss.html?url=https://news.ntv.co.jp/rss/index.rdfのようにRSSを直接指定して下さい。なお、ブラウザのセキュリティ仕様および著作権遵守の為、通常のブラウザ操作だけでは表示されないRSSも多数存在します。これらを含めた任意のRSSを表示する為には、後述のCORSセキュリティ迂回対応策が必要です。

詳細な使い方

実際は色々煩雑な為、以下を読んでもすぐには分からないと思います。その場合はサポートサイトでお尋ね下さい。匿名掲示板形式の質問スレッドを用意しています。

設定方法

右上または右下の[CC]を押すとメニューが開き、その中の[Settings]を押すと設定窓が開きます。変更は大半の場合その場で適用され、リロードは必要ありません。変更に対して表示が適宜変化するので分かると思います。また、設定変更はリロードを跨げますので、試すだけならsaveする必要はありません。動作を確認し、問題なければsaveして下さい。問題があった場合、saveせずにそのタブを閉じ、別タブで新たに開き直せば、元の設定で使えます。

設定はほぼ全てこの設定窓で行います。なお、場所の節約の為にタイトルバーにセレクタを埋め込んでおり、これがWindows等の一般的なGUIとは異なる為、セレクタの存在に気づかない人が散見されます。ご注意下さい。

タグを介して共有する方法

http://rssnews.sakura.tv/タグ名/ にアクセスすると、既に登録されているRSS内から指定のタグを含む一覧を表示する事が出来ます。例えば、http://rssnews.sakura.tv/news/をアクセスすれば、newsタグが付いている記事の一覧が得られます。自動判定の信用レベルが妥当でなく、htmlタグがそのまま表示されてしまう時は、手動で信用レベルを1に設定してください。[RSS Dashboard]内の各対応RSSのisTrustedで調整出来ます。2にすればリンクも画像も動作します。

また、空白ページhttp://rssnews.sakura.tv/_blank/を開いてから、ページ上部に表示されているタグ一覧からタグを選んで表示する事も可能です。

自分でRSSを一つ指定して開く方法

http://rssnews.sakura.tv/rss.html?url=RSSのurl のように、RSSのURLを与えてください。例えば、http://rssnews.sakura.tv/rss.html?url=https://sputniknews.jp/export/rss2/archive/index.xmlとすれば、sputniknewsのRSSを開くことが出来ます。

ただし、許諾を受けられないサイトの場合は418が返り、画面には何も表示されません。この場合はDashboard上にstatusが418と表示されます。このようなRSSも表示したい場合、後述のCORSセキュリティ迂回対応策を行う必要があります。

自分でRSSセットを指定して開く方法

設定が必要です。

  1. 各RSSをどの板にマウントするか設定します。
    1. タグを介してのアクセスでの自動設定を 設定窓:[RSS Dashboard] から永久設定として流用するか、(推奨)
    2. 設定窓:[Board Group]->[RSS boards configuration] 内に各RSS設定を手動で記述します。
    前者を推奨します。前者の場合、下側に表示されている自動設定のRSS一覧から対象を探し、左の + を押してこれらを永久設定に昇格させてください。上側に表示されればOKです。自動では、aaa.comは/aaa/に、bbb.co.jpは/bbb/にマウントされています。必要に応じて適宜これらを変更してください。変更は 自動的に [RSS boards configuration] に反映されます。後者の場合、同様の記述を手動で行います。上記 [RSS Dashboard] 内でまず設定した後に手動でさらに変更することも可能です。記述方法の詳細は設定窓内すぐ上のサンプルを参考にしてください。(なお、許諾を受けられないサイトのRSSは後述のCORSセキュリティ迂回対応策無しでは418が返り、設定しても表示されません。)
  2. 各board groupがどの板を含むのかを 設定窓:[Board Group]->[Board Group] 内に記述します。
  3. 目的の board group をボードセレクタで選びます。

ドラッグアンドドロップでRSSを開く方法

例えば空白ページ http://rssnews.sakura.tv/_blank/を開き、RSSまたはFeedlyのリンクをドラッグアンドドロップしてください。他と同様に、対応していれば開き、駄目な場合は418が返ります。

RSSを開きたいだけ、或いはRSSをキャッシュに登録して他ユーザーと共有したいだけなら、この方法が一番簡単です。以降はタグでアクセス出来るようになります。新規登録されたばかりのRSSにはtbdのタグが付きます。

キャッシュ付きプロキシを用いてRSSを提供する事が現在のインターネットの状況で著作権的に問題があるかは議論の余地があるとは思いますが、このサイト側に著作権がない事は確かなので、各サイトの許諾条件を確認し、それに従っております。よって、著名な大手サイトの場合はあらかじめ確認し、多くの場合は禁止されておりますので、最初からプロキシを止めてあります。この場合、後述のCORSセキュリティ迂回対応策無しではRSSを閲覧出来ません。

許可/禁止判断について

基本的な考え方は、以下です。

まず、当サイトの性格は、以下となります。

これに対して各サイトが許可してるかを、各サイトのRSSの許諾条件、無ければコンテンツ全般についての許諾条件で確認しています。その中で、

となります。ただ現実的には、結果的に大手サイトの大半が禁止となります。なお文面を全部読んで、何を禁止したがっているかを総合的に判断しておりますので、基準に揺らぎがあるように感じられる場合もあると思います。また、基本的に各規約等は提供側の都合で予告無く変更される為、更新に対応出来てない場合等もあると思います。これらの場合、サポートサイトで連絡下さい。適宜対応致します。ただし最終判断は責任者である当サイトが行います。

対応サイトおよびCORSセキュリティ迂回策について

具体的な設定方法は以下の通りです。

  1. CORSセキュリティを迂回します(以下ABCのうちいずれかを行ってください)
    1. 起動オプションでCORSセキュリティをOFFにする場合
      1. 起動オプションとして--disable-web-security --user-data-dir="C:\xxxx" を与えます。C:\xxxxには新しく作成した実在の空ディレクトリを指定するのが無難だと思われます。一般的にはショートカットを作成しますが、コマンドプロンプト等からの起動でも問題ないようです。詳細は上記オプションでググれば大量にヒットしますので、確認してみてください。CORS(クロスオリジン)エラーを無視するためのブラウザ設定Chrome48以降のWebセキュリティを無効にするが見やすいと思います。
      2. そのショートカットからブラウザを起動します。
      3. 起動されたブラウザのどれかの窓に、「サポートされていないコマンドライン フラグ --disable-web-security を使用しています。これにより、安全性とセキュリティーが損なわれます。」といった警告バーが表示されます。表示されない場合は、起動オプションが間違っていないか確認してください。オプションは両方とも2つのハイフン(--)から始まっています。--user-data-dirには実在のディレクトリを指定しなければならないという報告もあります。なお、ブラウザの再起動が必要な場合もあるようです。こちらでは、chrome49, chrome50, Edge109での動作を確認しています。
      4. ついでに本サイトを開く為には、オプションの最後に http://rssnews.sakura,tv/news/catalog 等を付加して下さい。
    2. サイトスクリプトをGreaseMonkeyスクリプトとしてインストールする場合
      1. ブラウザへのGreaseMonkey(FireFoxの場合)またはTamperMonkey(chromeの場合)を導入します。導入方法はググってください。
      2. GreaseMonkey/TamperMonkeyが動作している状況でCatChan.user.jsをクリックすれば、インストールされます。手動で登録しても構いません。
      3. 設定窓:[NetWorking]->[Cross domain connection] でgreaseMonkey's extensionを選択します。
    3. サイトスクリプトをブラウザ拡張としてインストールする場合(ブラウザ起動毎にインストールが必要です)
      1. ブラウザの設定->拡張機能を開きます。
      2. デベロッパーモードにチェックします。(必要ないかも?)
      3. CatChan.user.jsをダウンロードし、ドラッグアンドドロップで拡張機能の画面に落とします。
  2. 設定窓:[RSS Dashboard] を確認します。許諾を受けられないサイトのRSSは、statusが418となっています。これらに対し、オプションに {"directConnection":true} を指定します。個別に指定するのが面倒であれば、DEFAULTに指定すると全RSSに適用されます。
  3. GreaseMonkeyスクリプト/ブラウザ拡張としてインストールした場合、各URLにクエリパラメータ、?ccを追加します。(例: rssnews.sakura.tv/news/?cc)これによりサイトのCatChan.jsが止まります。忘れれば二重起動になるので見れば分かります。
  4. ブラウザ拡張としてインストールした場合、定期的に手動で登録されたスクリプトをアップデートしてください。上記クエリパラメータ?ccを忘れれば二重起動され、それぞれのバージョンを確認出来ます。

詳細についてはサポートサイトでも対応しますので、そちらも参考にして下さい。

サイトのURLについて

rssnews.sakura.tv/タグ/初期ビュー でタグを持った記事の一覧が表示されます。該当タグの記事がなかった場合は空白になります。

rssnews.sakura.tv/_blank/初期ビュー だとタグが選択されず、空白画面となります。自分で個別のRSSを指定するときに便利です。

初期ビュー:(以下から選んでください)

クエリパラメータ ?cc を与えると、サイトのCatChan.jsの動作が抑制されます。GreaseMonkeyスクリプトまたはブラウザ拡張としてインストールした場合にご使用下さい。

rssnews.sakura.tv/rss.html?url=RSSのurlで、指定したRSSを閲覧出来ます。

キャッシュ付きプロキシの詳細動作

  1. ユーザーの誰かが最初にアクセスするときに、登録を試行します。
  2. 禁止リストに既に登録されている場合、418が返り、何も表示されません。
  3. 禁止リストに登録されていなければ、新規登録され、プロキシを介してRSSが提供されます。新規登録の場合、各サイトの許諾条件を確認し、禁止の場合は速やかに停止します。
  4. クロールはパッシブ(受動的)です。誰かがそのデータを使うとき、キャッシュ期限を越えていればクロールし、更新されます。キャッシュ期限は、10分またはサイトがヘッダで指定したキャッシュ有効時間のいずれか長い方となります。アクセスがないと、3日後までは3時間程度毎に受動的にクロールされ、タグ情報を適宜更新しますが、それ以降は破棄されます。

従いまして、ユーザーに見えるRSSは、キャッシュ期限時間(大概10分程度)でオリジナルと同一の内容に追従します。言い換えると、オリジナルを10分以内の何処かの時点でアクセスした時と同一のデータがキャッシュ済みRSSとして提供されることになります。このため、このサイトで提供するキャッシュ付きプロキシはほぼリバースプロキシであり、技術的には何ら問題を発生しません。よって、許諾記述無しのサイトでは許可としています。

ユーザーによりクロールが起動された場合、そのユーザーのIPがX-Forwarded-Forヘッダで各RSSサイトに送出されます。このため、本サイトを匿名化の為に使うことは出来ません。なお、3時間毎の自動クロールの場合は、X-Forwarded-Forヘッダは送出されません。

RSS提供サイト様へ

RSS提供サイト様から見て、本サイトでプロキシを許可する場合のメリット/デメリットは以下となります。

クロールはこのドメイン(rssnews.sakura.tv)から行っています。ただし現在はレンタルサーバーである為、どう表示されるのかは不明です。

サイト側の都合でプロキシ使用を禁止したい場合等は、以下を検討下さい。

RSS提供サイト様からのコンタクトもサポートサイトで受け付けますが、なりすましを防ぐ為、サイトコンテンツを変更出来るか、サーバーで418等を返せるか、twitter等何らかの認証が為され第三者的の証明が有るか等、中の人である確認が出来ない場合、基本的になりすましと判断して無視かそれに近い対応になるのはご了承下さい。逆に言えば、対象サイトの許諾条件等が変更されているのを確認出来れば、誰からの通報であろうが対応しますので、RSS提供サイト側の人であったとしても名乗る必要はありません。

もっと基本的な説明

現代的なWebサイトはJavaScriptを使ってユーザー操作を処理しています。このJavaScriptは、サーバーからプログラムをダウンロードして実行する形態の為、ウイルス等を混入することも技術的には可能であり、もし仮に何も制限がなければ、Webサイトを訪れただけでPCやスマホが破壊されたりデータが流出するような事も出来てしまいます。このため、JavaScriptには様々なセキュリティ制限がかけられています。これの一つがCORS制限で、JavaScriptでは基本的に他サイトのデータを取得出来ません。このため、本サイトのようにRSSリーダーをJavaScriptで提供しても、そのままではRSSを取得できず、表示出来ません。

これに対しての回避策は以下となります。

  1. そのサイトとは同一サイト扱いでよい、とデータ提供側に宣言して貰う。(ヘッダに Access-Control-Allow-Origin: rssnews.sakura.tv を追加)
  2. このデータはどのサイトが取り扱ってもよい、とデータ提供側に宣言して貰う。(ヘッダに Access-Control-Allow-Origin: * を追加)
  3. そのプログラムは安全であるから、CORS制限を外してもよい、とユーザーに宣言して貰う。(スクリプトをインストール)
  4. そもそもの原因のブラウザのCORSセキュリティをOFFにしてしまう。(起動オプション)
  5. "他サイト"だから駄目なので、"自サイト"で同じデータを提供しなおす。(本サイト内でプロキシを提供)

Aは基本的に、負荷分散の為に複数サーバーにした姉妹サイト間で使れています。○○は安全なサイトである、と姉妹サイト間で宣言しあうわけです。

Bはサイト側が「相手を選ばずデータを提供する」と宣言するわけですが、実際の所、このCORS制限はブラウザのJavaScriptだけの紳士協定であり、通常のメーラーやRSSリーダーやその他のクローラーでは無視されてデータ取得されます。このため、この宣言は実質的にブラウザのJavaScript相手専用なのですが、一般的に宣言されてることは稀です。これはちょうど鶏と卵の逆となっています。JavaScriptで実装されたRSSリーダーがないのだから、RSSにAccess-Control-Allow-Origin: * ヘッダを付ける必要はなく、この状況だとJavaScriptでRSSリーダーを作ってもRSSを取得出来ないので、誰もそんなものは作らない、というわけです。今回そこに風穴を開けてみたので、全てのRSSにこの宣言をして欲しいところですが、一般的にセキュリティ緩和は心理的に難しいものではあります。

Cは、ブラウザのJavaScriptに制限が必要なのは、サイトからダウンロードした正体不明のプログラムを実行するからであり、ユーザーが明示的に許可したプログラムなら安全なのでセキュリティ制限は緩和してよい、というブラウザの解釈です。したがって、必ずユーザー操作でインストールする必要がありますが、一旦インストールしてしまえばCORS制限は外れ、あらゆるサイトのデータを自由に取得出来るようになります。この結果、通常のRSSリーダーと同様、任意のサイトのRSSを表示出来るようになります。ただし問題は以下で、

通常、設定すらしない人が大半であり、インストールしてまで見ようとする人はごく稀です。よって前者は期待出来ませんし、後者はどうしようもありません。

DはブラウザのCORSセキュリティそのものをOFFにしてしまうものです。この方法だと、本サイトでのCORS問題は根本的に解決します。ただし、適用はブラウザ単位ですので、他タブで他サイトを閲覧する場合にもセキュリティ制限が同様に緩和されてしまいます。この為、この方法を用いる場合、本サイト以外は閲覧しないのが無難なのですが、実際のところ、各RSSをクリックして元記事を読む際には各サイトを開く必要がありますので、そうもいきません。従いまして、最低限、個人情報を扱っているブラウザ/プロファイルとは分離して使用するのが現実的な解となります。なお、悪意のあるサイトがCORS制限緩和状態を悪用しようとしても、通常起動のブラウザでは表示されず、コンソールにはエラーが出るのでバレバレであり、また、そもそも開発者以外がこのオプションを使うこともほぼ無い為、悪用するサイトも今のところはほぼ無いとも思いますが、それでも用心するに越したことはありません。

Eは、これらに対して本サイトだけで解決する方法です。本サイトでプロキシを提供してしまえば、JavaScriptからは本サイト扱いになるので、CORS制限を迂回出来ます。技術的にはキャッシュやリバースプロキシの類であり、10分程度古いデータが見えるだけなので、RSSリーダーからの使用には全く問題ありません。ただし著作権的に、公衆送信権の侵害と解釈される可能性はあるので、各サイトの許諾条件に従っています。RSS提供サイトからみた本方式の利点は、負荷分散が為されることであり、欠点はこの裏返しで、RSS購読者が見えにくくなることです。このため、クロールを起動した人のIPアドレスをRSSサーバーに送信し、多少でも緩和しようとしています。なおJavaScriptのタイマは「この時間”以上”経過している」ことを保証するもので、例えば10分ごとの自動更新とした場合、実際は10分+αとなり、多人数が自動更新で本サイトのプロキシ経由でRSSを取得すると、何となく持ち回り的にクロール先頭が交代しますので、この方式でもそれなりに満遍なくユーザーIPを取得出来ます。全ユーザーIPを取得したい場合はAかBを検討下さい。なお記事が開かれた場合にはreferrerが送られる設定にはしています。

本サイトは全RSSが Access-Control-Allow-Origin: * ヘッダを付加してくれることを望みますが、これはこちらが出来る事ではないため、本サイトで対応出来る範囲の、キャッシュ付きプロキシの提供となっております。

コンタクトについて

サポートサイトをご利用下さい。

ブラウザ対応について

つまり、windowsXP以降での各ブラウザ最新版で使用出来ます。

注意事項

RSSを購読するとき、そのRSSのデータ期間よりも自分の確認頻度が低いとき、つまりRSSに直近1日分の内容しかRSSには掲載されないのに1週間に一度しか確認しない時などには、通常、自前でサーバーを立ててクロールさせ、古いRSS内記事をキャッシュしたりしますが、本サイトはこのサーバーの代わりにはなりません。本サイトはプロキシを介して「現時点から10分程度以内」のオリジナルサーバーが提供していたRSSをそのまま提供しているだけであり、数時間〜数日前の記事内容をキャッシュしているわけではありません。全ての記事を取得する為には、ユーザー側で自動更新をONにした状態でブラウザを開きっぱなしにしておく必要があります。

本サイトが提供するプロキシは、X-Forwarded-For ヘッダを送出しており、匿名化には使えません。

本サイトのクロールはパッシブ(受動的)です。ユーザーからのアクセスがあってからキャッシュデータを確認し、古い場合はその場でクロールします。結果、クロールが発生した場合はレスポンスが奇妙なほど遅くなりますが、仕様ですのでご了承下さい。

サイトの方針について

サイトの方針について異議がある場合は、基本的にフォークして下さい。具体的には、同様のサイトを立ち上げ、このサイトと正当に競争してください。フォークであれば、旧仕様のサイトを完全に使える状態で新仕様のサイトも並立し、ユーザーが適切な方を選ぶ事により、結果的に判断が正しかった方が繁栄する為、後退の無い進化が達成出来ます。

個人的には、ネット界隈が今もなお順調に成長し続けているのはこのフォーク文化に依るところが大きく、また資本主義の成長原理自体がフォークだと考えていますので、この文化は大切にしたいと思っています。実際に何が適切なのかを完全に見通せる人はなかなかいません。このため、遠慮無く意見を言い合える場所、とりわけネット上では、細かい諍いは絶えません。これに対して公平に裁定を下せるのがフォークです。ある一個人にとって都合の良い仕様が、多くの人にとって都合のいい仕様とは限りません。昨今のネット界隈は己の価値観の押しつけ合戦めいた展開になっている事もよくありますが、それが押しつけだったのか、全体を見た良い判断だったのかを、公平にユーザーに判断して貰え、後退の無い進化を得る仕組みがフォークです。

本サイトは広告収入目的の営利サイトであり、ユーザーの利益を重視します。荒らしはBANしますし、不適切だと判断したRSSにはプロキシを停止します。それぞれの判断が妥当かどうかはフォークで決着するようお願いします。


Revision 2023.02.05.0