Internet Explorer では、[ツール] -> [インターネット オプション] -> (閲覧の履歴) の設定で [Web ページにアクセスするたびに] オプションを設定しています。これにより、Flash Player でビデオにアクセスするたびに、ビデオが取得されます。サーバー。
ただし、設定を「自動」に設定すると、ビデオはサーバーから返されず、キャッシュされたコピーが使用されます。Web.config で clientCache 設定 (つまり、useMaxAge/UserExpires/DisableCache) を使用しようとしましたが、最初の要求でビデオが返されますが、キャッシュされたバージョンが再生された後に返されます。
Fiddler では、ビデオに対して最初のリクエストが行われていることがわかります。その後、キャッシュされたバージョンのみが再生されるため、http リクエストは行われません。
一時ファイルの「自動」設定では、毎回サーバーからビデオが返されるようにするにはどうすればよいですか?
編集
Eric が述べたように、これは Flash Player や IE の問題ではなく、キャッシュの問題であることは明らかです。
フィドラーで確認したところ、次のようなヘッダーがあります。
HTTP/1.1 200 OK Content-Length: 76278442 Content-Type: video/mp4 Last-Modified: Wed, 21 Aug 2013 08:47:29 GMT ETag: "2117329216" サーバー: Microsoft-IIS/7.5 X-Mod-H264-ストリーミング: version=2.2.7 X-Powered-By: ASP.NET 日付: 2013 年 8 月 22 日 (木) 07:42:23 GMT
そしてフィドラーのキャッシュタブは私に教えてくれます:
Expires、Pragma、または Cache-Control ヘッダーが存在し、キャッシュが禁止されていない限り、HTTP/200 応答はデフォルトでキャッシュ可能です。HTTP/1.1 ETAG ヘッダーが存在する: "2117329216" HTTP Last-Modified ヘッダーが存在する: Wed, 21 Aug 2013 08:47:29 GMT
明示的な HTTP 有効期限情報が提供されませんでした。ほとんどのブラウザーはヒューリスティックな有効期限ポリシーを利用しています。Last-Modified と Date の間のデルタの 10% は「02:20:50.5000000」であるため、この応答はヒューリスティックに 22/08/2013 11:52:54 に期限切れになります。
したがって、web.config のclientCacheエントリからすべての組み合わせを試してみましたが、IE がそれを尊重し、独自のヒューリスティック アルゴリズムを使用しないように Cache-Control : no-Cache ヘッダーを追加できないようです。
これが関係しているかどうかはわかりませんが、ビデオがアップロードされると、メインの仮想フォルダー「アーカイブ」の下にフォルダーが作成されます。
フォルダ構造は次のような形式です: Archives/Archive1/0000/01/MP4/High たとえば、アップロードごとに数値が増加します。
したがって、Web構成には次のものがあります。
<location path="Archives">
<system.webServer>
<staticContent>
<clientCache cacheControlMode="DisableCache" />
</staticContent>
</system.webServer>
</location>
まだ Cache-control ヘッダーは追加されていません。
特定のフォルダーを参照してみました:
<location path="Archives/Archive1/0000/22/MP4/High">
<system.webServer>
<staticContent>
<clientCache cacheControlMode="DisableCache" />
</staticContent>
</system.webServer>
</location>
それでもヘッダーは追加されません(ただし、IIS でディレクトリ Archives/Archive1/0000/22/MP4/High を確認すると、「High」フォルダーの「Set Common Headers」をクリックするとヘッダー セットが表示されます)。
何か案は?
「サーバー: Microsoft-IIS/7.5 X-Mod-H264-Streaming」という応答で気付きましたが、これはキャッシュの問題と関係がありますか?