我有一个 FTP,其中包含一些文件,我想将其提供给用户下载。但是 FTP 受密码保护,我想使用 PHP 验证 FTP 并使链接在 php 页面中可用,以便当用户单击该页面中的任何 FTP 链接时,应该开始下载。
请帮忙。
您可以使用PHP 的 fopen 包装器通过 PHP 从服务器打开 FTP 位置,并将其作为普通 HTTP 响应传递给用户:
// you can use application/octet-stream to force download
header ('Content-Type: ' . $content_type_of_your_file);
// open file and pass it to output
readfile ('ftp://username:password@example.com/path/to/your.file');
Run Code Online (Sandbox Code Playgroud)
正如 @Alan 提到的,如果 FTP 服务器位于网络之外的某个位置,这将产生额外的流量。您可以将其包装在缓存方案中 - 例如,仅当您的网络服务器上没有副本时才下载,如果有,请检查新鲜度。然后,您实际上是在构建 FTP 站点的 HTTP 镜像,并且在用户请求文件之前将文件预取到缓存中可能是明智的做法。
| 归档时间: |
|
| 查看次数: |
940 次 |
| 最近记录: |