【发布时间】:2010-08-18 22:32:37
【问题描述】:
我再次尝试阻止表单缓存 mp3 文件形成我的网站。我使用 Flash 播放器,所有文件都在公共 html 之外我使用这个脚本来访问文件
<?php
$file = $_GET['file'] . '.mp3';
$fileDir = '/path/outside/public_html/';
if (file_exists($fileDir . $file))
{
ob_start();
$contents = file_get_contents($fileDir . $file);
echo $contents;
$buffer = ob_get_contents();
ob_end_flush();
header('Expires: Mon, 26 Jul 1980 00:00:00 GMT');
header('Cache-Control: no-store, no-cache, must-revalidate, max-age=0');
header('Cache-Control: post-check=0, precheck=0', false);
header('Pragma: no-cache');
header('Content-type: audio/mpeg');
echo $buffer;
} ?>
我是 php 菜鸟,所以这个脚本可能有问题,但它可以工作......几乎,我有问题阻止 Opera 中的文件缓存 - 它仍然缓存 mp3 文件。我看到了一些解决方案:当我从站点播放文件时,文件被下载到缓存,但在完整下载文件后被自动删除。没有时间复制此文件。所以我的问题是:如何做到这一点?用php可以吗?
【问题讨论】: