2009-08-10 3 views
14

ウェブページからローカルファイルシステム上のファイルへのリンクを作成し、すべてのブラウザ(または少なくともInternet Explorer、Firefox、Chrome)で動作させたいと考えています。例えばローカルシステム上のファイルへのクロスブラウザリンク

、Internet Explorerでは、次の作品:FirefoxとChromeで

<a href="\\myserver\doc\info.pdf">Info here</a> 

ではなく。

すべてのブラウザで動作するリンクを作成する方法はありますか?

JavaScriptを使用してブラウザを検出し、ファイル名に基づいて適切なリンクを表示する方法はありますか?彼らはセキュリティ上のリスクとなる可能性がありますので、HTTP(S)経由で取得されたページ上のローカルファイルへの///

+1

これは純粋な推測ではありませんが、ネットワーク共有からローカルファイルシステムから「ダウンロード」されたファイルは、通常、Webサーバーからダウンロードされたものとは異なるセキュリティ属性を持っています。したがって、これはセキュリティを迂回する方法とみなされ、他のブラウザでは全く許可されない可能性があります。 –

答えて

16

リンクが故意のMozilla/Firefoxで無効になっている、とあります

+0

とにかく、これに問題があるので、これはセキュリティ上の問題ですか?同じファイルをHTTP経由でダウンロードするのに比べて、なぜそれはより問題になりますか? – Rafiki

+0

@Rafiki:リンク先の記事にはいくつかのリスクが記載されています。あなたがもっと知りたいなら、これは素晴らしい新しい質問のように聞こえる。 https://security.stackexchange.com/でそのように尋ねることを検討してください。 – sleske

8

は、ファイルを使用してURLを接頭辞試します過去の攻撃で使用されていました。

ただし、この動作を無効にすることはできます。詳細については、MozillaZineのthis articleを参照してください。

+2

また、バックスラッシュをスラッシュに変換する必要があるため、例としてfile://///myserver/doc/info.pdfがあります。これは彼の答えで与えられたsleskeのリンクでカバーされています。 – Cahlroisse

関連する問題