URL文件在非web可访问的目录(Readfile()?Fopen() . .)


URL to file in non web accessible directory (Readfile()? Fopen()?...)

所以文件上传到我的服务器上的一个非web可访问的目录,但我想提供一个URL或一些下载访问这些文件。下面是我的尝试,但它不起作用。

$destination = $_SERVER["DOCUMENT_ROOT"] . "/../Uploads/" . $random;
mkdir($destination);
move_uploaded_file($temp, $destination."/".$name);
$final = $server."/".$destination."/".$name;
**$yourfile = readfile('$final');**

,然后回显$yourfile:

<?php echo $yourfile; ?>

我要么得到一个打开失败的流,要么得到一个很长的字符串。是否有任何解决方案,只是下载文件的请求通过URL?

编辑:我想保持目录非web访问

readfile直接输出内容,不返回内容。或者阅读file_get_contents上的手册页。

readfile('$final');永远不会成功。除非文件的名字是" $final "双引号或不引号

你的问题已经被回答了几百次了。你没必要连续发四次。

  • PHP显示/下载web服务器外目录文件根
  • 如何使用PHP从外部的web根服务文档?
  • 使用PHP显示所有来自外部web根文件夹的图像
  • https://stackoverflow.com/search?q=php%20readfile%20from%20outside%20docroot