【问题标题】:How to fix "Failed - No file" on download?如何在下载时修复“失败 - 无文件”?
【发布时间】:2019-01-28 22:24:14
【问题描述】:

我正在尝试设置适用于 Chrome 和 IE 10-11 的下载文件。它在大多数情况下适用于普通文件类型(EXE、PNG、TXT、..),但是当尝试下载没有文件类型的文本文件或像“000”这样的随机类型时,它将失败,显示“失败 - 否”文件”。
是否有人知道可能导致此问题的原因或如何解决?

我认为路径有些错误,所以我在浏览器的同一目录中导航到另外几个文件。它们显示得很好,没有 404,但尝试访问具有奇怪文件类型的文件会返回 404,即使路径显然是正确的。

我正在使用 Download.js;

$(document).on('click', '[download]', function (e) {
    e.preventDefault();
    download($(this).attr('href'));
});

HTML;

<a href="~/edi_processed/@item.Name" class="download" download>@item.Name</a>

变量“item”是“FileInfo”类的一个实例。

可以正常下载名为“Test.txt”的文件。
但是名为“Test.000”的相同文本文件将显示“失败 - 无文件”。

【问题讨论】:

  • 您很可能遇到mod_rewrite 问题:请参阅此答案:serverfault.com/a/841461
  • 这是我可以在 Kestrel 中做的事情吗?我无法理解。
  • 我不知道 Kestrel 是什么。很可能是服务器配置问题。根据您托管它的位置,它们可能允许您设置自己的mod_rewrite 规则。您可以使用.htaccess 文件或从控制台执行此操作。
  • 我没有在反向代理或 Web 服务器本身中定义任何重写规则。这是您通常必须定义才能下载任何文件类型的内容吗?

标签: javascript kestrel-http-server


【解决方案1】:

我在尝试链接到 filename.kmz 文件时遇到了这个问题。我将其重命名为 filename.txt,然后在下载时将其重命名。

【讨论】:

  • 能否请您更深入地了解一下您是如何在下载时重命名它的?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-04-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多