115

htmlファイルがローカル(私のCドライブ上)の場合は機能しますが、htmlファイルがサーバー上にありイメージファイルがローカルの場合は機能しません。何故ですか?

考えられる回避策はありますか?

4

15 に答える 15

72

クライアントがローカル ファイル システム ファイルを要求し、JavaScript を使用してファイルの内容を把握できる場合、セキュリティ上の脆弱性が発生します。

これを回避する唯一の方法は、ブラウザで拡張機能を構築することです。Firefox 拡張機能と IE 拡張機能は、ローカル リソースにアクセスできます。Chrome ははるかに制限的です。

于 2010-11-03T19:14:09.217 に答える
34

「C:/localfile.jpg」の代わりに「file://C:/localfile.jpg」を使用すべきではありませんか?

于 2010-11-03T19:13:46.733 に答える
30

ローカルの HTML ページにアクセスしない限り、ブラウザはローカル ファイル システムにアクセスできません。画像をどこかにアップロードする必要があります。HTMLファイルと同じディレクトリにある場合は、使用できます<img src="localfile.jpg"/>

于 2010-11-03T19:13:28.507 に答える
20

C:は認識された URI スキームではありません。file://c|/...代わりに試してください。

于 2010-11-03T19:13:01.980 に答える
7

正直なところ、最も簡単な方法は、サーバーにファイル ホスティングを追加することでした。

  • IIS を開く

  • 既定の Web サイトの下に仮想ディレクトリを追加する

    • 仮想パスは、ブラウザで参照したいものになります。したがって、" serverName/imagesを選択すると、 http://serverName/imagesに移動して参照できます。
    • 次に、C: ドライブに物理パスを追加します。
  • "NETWORK SERVICE" および "IIS AppPool\DefaultAppPool" の C: ドライブのフォルダーに適切なアクセス許可を追加します。

  • 既定の Web サイトを更新する

  • これで完了です。http://yourServerName/whateverYourFolderNameIs/yourImage.jpgに移動して、そのフォルダー内の任意の画像を参照し、その URL を img src で使用できるようになりました。

これが誰かを助けることを願っています

于 2016-10-05T15:12:48.157 に答える
3

IE 9: ユーザーが画像をサーバーに投稿する前に画像を確認するようにしたい場合: ユーザーはその Web サイトを「信頼できる Web サイト リスト」に追加する必要があります。

于 2012-09-27T14:02:53.717 に答える
2

セキュリティ ルールに関する Newtang の見解はさておき、あなたのページを閲覧する人が で正しい画像を持っていることをどうやって知るのc:\localfile.jpgでしょうか? できません。できると思ってもできない。一つには、Windows環境を前提としています。

于 2010-11-03T19:14:25.750 に答える
2

Google chrome ブラウザを使用している場合は、このように使用できます

<img src="E://bulbpro/pic_bulboff.gif"   width="150px" height="200px">

ただし、Mozilla Firefox を使用している場合は、「ファイル」を追加する必要があります。

<img src="file:E://bulbpro/pic_bulboff.gif"   width="150px" height="200px">
于 2015-12-08T12:45:11.717 に答える
1

あなたがやろうとしていることには2つの可能性があります。

  1. サーバー上で実行されている Web ページで、最初に設計したコンピューター上のファイルを検索する必要がありますか?

  2. ページで表示している PC から取得しますか?

オプション1は意味がありません:)

オプション 2 はセキュリティ ホールです。ブラウザーは、Web ページ (Web から提供される) が閲覧者のマシンにコンテンツをロードすることを禁止します。

Kyle Hudson があなたに何をする必要があるかを教えてくれましたが、それはあまりにも基本的なことなので、あなたがやりたいことはこれだけだとは信じがたいと思います。

于 2010-11-03T19:48:19.380 に答える
0

画像をユーザーが選択したものにするのはどうですか? input:file タグを使用し、画像を選択した後、クライアント側の Web ページに表示しますか? それはほとんどのことで実行可能です。現在、IE で動作するようにしようとしていますが、すべてのマイクロソフト製品と同様に、クラスター fork() です。

于 2012-06-25T15:43:32.483 に答える
0

画像もアップロードしてから、サーバー上の画像にリンクする必要があります。

于 2010-11-03T19:15:03.190 に答える