--- title: リソース URL slug: Web/HTTP/Basics_of_HTTP/Resource_URLs tags: - Guide - HTTP - Intermediate - Resource translation_of: Web/HTTP/Basics_of_HTTP/Resource_URLs ---
{{HTTPSidebar}}{{non-standard_header}}
resource:
というスキームのプレフィックスが付いたリソース URL は、Firefox と Firefox のブラウザ拡張機能によってリソースを内部的に読み込むために使用されますが、情報の一部はブラウザが接続するサイトでも利用できます。
リソースURLは、接頭辞 (resource:
) とロードするリソースを指す URL の2つの部分で構成されます。
resource://<url>
例
resource://gre/res/svg.css
リソース URL ('->') に矢印がある場合は、最初のファイルが次のファイルにロードされたことを意味します。
resource://<File-loader> -> <File-loaded>
より一般的な詳細については、ウェブ上のリソースの識別を参照してください。
この記事では、組み込みのリソースを指すために Firefox が内部的に使用するリソース URI に焦点を当てます。
resource:
URL によって共有される情報の一部はウェブサイトで利用できるため、ウェブページは内部スクリプトを実行し、デフォルトの設定を含む Firefox の内部リソースを調べることができます。
たとえば、Browserleaks のスクリプトは、サイトで実行されている簡単なスクリプトでクエリが実行されたときに Firefox が表示する内容を強調表示します (コードは https://browserleaks.com/firefox#more にあります)。
ファイル firefox.js は、プリファレンス名と値を pref() 関数に渡します。 例えば、
http://searchfox.org/mozilla-central/rev/48ea452803907f2575d81021e8678634e8067fc2/browser/app/profile/firefox.js#575
ウェブサイトではこの pref()
関数をオーバーライドし、スクリプトresource:///defaults/preferences/firefox.js
を使用して、 Firefox のデフォルト設定を簡単に収集できます。
さらに、プラットフォームやロケールなどのビルド構成によっては、ウェブサイトがこの情報を使用して個々のユーザーを識別できるという意味で、いくつかのデフォルト設定値が異なります。
この問題を解決するために、 Mozilla は {{bug(863246)}} のリソースを読み込む動作を変更しました。これは Firefox 57 (Quantum) で登場しました。
過去には、ウェブコンテンツは、 Firefox の内部リソースだけでなく、拡張機能の資産も含め、URIが必要とするあらゆるリソースにアクセスすることができました。 現在、この動作はデフォルトでは禁止されています。
しかし、特定の状況下で Firefox がウェブコンテンツにリソースを読み込む必要があります。 たとえば、ビュー・ソース・ページ (ビュー・ソースまたはビュー選択ソース) を開くと、 resource:
URI を介して viewsource.css
が必要です。ウェブコンテンツに公開する必要があるリソースは、 resource://content-accessible/
という名前の新しい場所に移動されました。これは隔離されており、重要ではないリソースのみが含まれています。 このようにして、重要なリソースを公開し、ほとんどの脅威を排除できます。
メモ: ウェブと拡張機能の開発者がリソース URL をもう使用しようとしないことをお勧めします。彼らの使い方はうまくいきませんでした。そしてほとんどの使用法はこれ以上動作しません。
resource: はどの仕様書にも定義されていません。
resource: は Firefox のみ対応
resource:
is covered here)