【问题标题】:How to create a URL with no ".html" to download a file?如何创建一个没有“.html”的 URL 来下载文件?
【发布时间】:2015-05-06 14:21:23
【问题描述】:

我想在我的服务器上创建一些 URL,允许您从“直接链接”下载文件,但不能从 www.website.com/file-for-download.exe 之类的直接链接下载文件我希望它只是 www.website.com/download 然后它将开始下载.exe

所以我基本上会:

www.website.com/download

www.website.com/download2

www.website.com/download3

每个都有自己的文件,当您访问链接时,您可以选择下载。

如何创建不以“.html”结尾但开始下载链接的 URL?

【问题讨论】:

  • 我想有几种不同的方式。如果您有一个 Web 应用程序,那么您可以使用它可以使用的任何 URL 方案并编写代码来返回文件流。您可以重写 Web 服务器和/或目录配置中的 URL,以指向特定 URL 的文件。由于我们对您的设置一无所知,因此我们无法更具体。但一般来说,没有规定 URL 必须包含文件名。 HTTP 没有“文件”的概念。您的服务器可以针对任何请求使用您喜欢的任何标头/内容进行响应。
  • 我通过 FileZilla 上传了文件。还有我的网页在根目录
  • FileZilla 在各个方面都与您提出的问题完全无关。
  • @David 我想知道是否有办法将我的可下载文件连同可以允许用户下载所述文件的 html 文件一起上传到 FileZilla。只是我不希望链接转到实际的.html 链接。只是一个直接下载文件但不使用文件名本身的文件,例如download-1.exe
  • 这是什么类型的网络服务器?

标签: url download


【解决方案1】:

您可以使用您的.htaccess 文件来执行此操作。

RewriteRule ^download$ "/file.exe" [P]

然后,当您输入 http://example.com/download 时,您将下载名为 file.exe 的文件

【讨论】:

  • 这行得通,除了我必须将[P] 更改为[R] .. 经过一番搜索后发现,但感谢您指出我正确的方向!
  • 这种方法有没有更深入的地方?那么假设http://example.com/download/one/two 然后下载文件?我尝试将^download/$ 扩展到^download/one/two$,但没有成功
猜你喜欢
  • 2017-07-31
  • 2019-01-14
  • 2019-09-12
  • 1970-01-01
  • 2017-09-17
  • 2011-01-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多