1

サーバーに flv ファイルがあり、コンテンツは変更されていますが、必ずしも名前が変更されているわけではありません。

flv ファイルが、ファイルをキャッシュに設定するヘッダーを送信するという問題が発生しています。同じユーザーが後で異なるコンテンツの同じファイルを必要とする場合があるため、ファイルはブラウザーにキャッシュしないように指示する必要があります。

PHP の header() コマンドに似たものを使用してみましたが、実行すると:

Curl -I myfile.com/file1.flv 

ヘッダーはまだあります。

何か助けてください。

4

1 に答える 1

3

これにPHPをどのように使用したかはわかりません。ファイルを処理してディスパッチしているのはapacheなので、そこから始めるのが最適です。

以下をお試しください:

1) apacheでheaders.load(ヘッダーモジュール)を有効にします。それ以外の場合は機能しません。

2)以下を.htaccessに追加します。これにより、以下のすべての形式のファイルタイプがキャプチャされ、キャッシュされないように設定されます。

<FilesMatch "\.(jpg|gif|js|css|ico|swf|zip|pdf|doc|htc|xls|rtf|odt|wav|mp3|avi|wmv|mov|txt|flv)$"> FileETag None
<IfModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate" Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</IfModule>
</FilesMatch>

3) apacheを再起動します。

4) 'curl-iwww.url.com/file.flv'コマンドを再試行します。

ヘッダーがファイルにキャッシュしないように指示しているのがわかるはずです。

于 2013-01-24T15:59:17.187 に答える