从文档根目录外部获取文件。 PHP

时间:2012-07-09 15:21:48

标签: php file document-root

我目前将docx文件和pdf文件存储在doc根目录之外的用户上传文件夹中。我打算通过数据库链接将这些文件下载到严重加扰的文件名。

以前我只使用PHP从root用户以外的文件中获取数据 - 是否可以从这个区域检索整个文件,如果可以的话,如何进行检索。

2 个答案:

答案 0 :(得分:1)

<?php

$file_id = $_GET['id'];

$local_path = get_real_filelocation_from_id($file_id);

readfile($local_path);

get_real_filelocation_from_id()的代码留作OP的练习。

答案 1 :(得分:0)

<?php
$get_file=$_GET['file_name'];
$file = '/path/to/uploads/'.$get_file;

if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
?>

经过几个小时的搜索,我发现这似乎有效。不幸的是,虽然符号链接根似乎是一条很好的路径,但我不确定如何实际实现它 - 当我尝试最基本的脚本时,firebug会进入怪癖模式。