我目前正在尝试查找我从中下载文件的源路径。我不确定如何解释,但我会尽力而为。
我向服务器发送GET
请求,如下所示:GET /en/download.php?pod_id=2138
。从这里,服务器继续回复:
Set-Cookie: PHPSESSID=neatgv4m7a1pdorjqmoo76s151; path=/
Content-disposition: attachment; filename=2015-09-06-2.wav
Connection: close
Transfer-Encoding: chunked
Content-Type: Application/octet-stream
我当然使用WireShark捕获了这个。接下来是完整的WAV文件,但我会饶恕我们。
我很好奇我是否可以获得2015-09-06-2.wav
的路径,以便我可以通过这种方式下载文件。这是可能的还是服务器不允许我这样做?
答案 0 :(得分:0)
简而言之:不可能:
“下载”文件夹是特定于浏览器的位置,只有用户可以控制。该文件将下载到用户指定的文件夹中。
使用readfile和标题强制显示“另存为...”对话框。
<?php
header('Content-disposition: attachment; filename=image.jpg');
header('Content-type: image/jpeg');
readfile('/server/path/to/image.jpg');
?>
答案 1 :(得分:0)
由于安全原因,Download.php将提供该文件。因此,如果足够安全,则无法直接访问文件或文件夹。可以使用.htaccess阻止直接访问,也可以将其置于公众无法直接访问的位置,或者可以根据download.php的请求从数据库中直接获取文件(blob)
如果它不受直接访问保护,则该文件位于某个文件夹中服务器的某个位置。如果找到它,您可以访问。但没有办法在没有线索的情况下找到它。浏览你可能会发现。
如果由php文件以这种方式提供,很可能直接访问不可用。