在用户下载文件时重命名另一台服务器上的文件

Posted

技术标签:

【中文标题】在用户下载文件时重命名另一台服务器上的文件【英文标题】:Renaming File on another server as user downloads it 【发布时间】:2009-02-12 12:04:23 【问题描述】:

我允许用户通过提供链接从另一台服务器下载文件。

但是,当用户尝试下载文件时,文件始终命名为“file.zip”。我希望我可以使用 javascript 将文件重命名为更合适的名称。

我该怎么做?这可能吗?

不胜感激。

谢谢大家

更新

如何将该文件保存到我的服务器并在我这样做时让用户下载它?用户可以开始下载未完全下载的文件吗?

【问题讨论】:

【参考方案1】:

不,不可能,file.zip 会在服务器发送的 Content-Disposition 标头中,您无法在 Javascript 中进行任何拦截和修改。

【讨论】:

【参考方案2】:

我很确定 Javascript 不会让你这样做。

更好的选择可能是发送 HTTP Content-Disposition 标头,如下所示:

Content-Disposition,attachment; filename=foobar.zip

其中 foobar.zip 是您希望调用的文件的名称。

【讨论】:

我可以在其他服务器上仍然有文件的情况下使用此方法吗? 这必须在实际托管文件的服务器上完成,所以我猜如果您无权访问该服务器,这将无济于事。不幸的是,我认为这是唯一的方法。【参考方案3】:

这是不可能的。下载文件时显示特定文件名的唯一方法是控制远程服务器并将其设置为设置特定的 http 标头。

【讨论】:

以上是关于在用户下载文件时重命名另一台服务器上的文件的主要内容,如果未能解决你的问题,请参考以下文章

linux 将一个服务器上的文件或者文件夹复制到另一台服务器上

linux 将一个服务器上的文件或者文件夹复制到另一台服务器上

linux 将一个服务器上的文件或者文件夹复制到另一台服务器上

大家好!我想把linux服务器上的oracle客户端拷贝到另一台linux主机上请要考哪些文件啊 ,怎么个弄法?谢谢

请问一下linux,如何将服务器文件拿到本地?啥命令?

平滑运算符:在写入文件时重命名文件