1

我的服务器上有 flv 文件,这些文件的内容不断变化,但名称不一定会更改。

我遇到了一个问题,即 flv 文件发送将文件设置为缓存的标头。由于有时同一用户可能需要稍后具有不同内容的同一文件,这些文件需要告诉浏览器不要缓存它们。

我尝试使用类似于 PHP 的 header() 命令的东西,但是当我运行时:

Curl -I myfile.com/file1.flv 

标题仍然存在。

请问有什么帮助吗?

4

1 回答 1

3

我不确定你是如何尝试使用 PHP 的,它是 apache 正在处理和分派文件,所以最好从那里开始。

试试下面的:

1)在 apache 上启用 headers.load(headers 模块)。否则不会工作。

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)重启阿帕奇。

4)再次尝试“curl -i www.url.com/file.flv”命令。

您应该看到标题告诉文件不要缓存。

于 2013-01-24T15:59:17.187 回答