HTML 下载链接失败的可能原因都有哪些?
Posted
技术标签:
【中文标题】HTML 下载链接失败的可能原因都有哪些?【英文标题】:What are possible reasons that HTML download link is failing?HTML 下载链接失败的可能原因有哪些? 【发布时间】:2018-02-10 18:27:56 【问题描述】:我创建了一个页面供用户下载某些文件。我使用 html 下载链接这样做:
<a download href="/home/Uploads/someDir/someFile.PNG" >View</a>
当我在笔记本电脑上使用 WAMP 进行开发时,它运行良好。当我将代码上传到我们的 Centos 7 服务器时,它不起作用。我将 Uploads、someDir 和 someFile.PNG 权限更改为 777。我还确保文件路径正确。但是当按下下载链接时,屏幕底部的文件图标显示“没有文件失败”。
也许我需要对权限做更多的事情。我知道 html 文件所在的文件夹具有受限的权限,但我更愿意保持这种方式。我不知道这会导致什么问题。
我正在寻找调试提示/可能的原因。在这一点上,我不知道该往哪里看。
【问题讨论】:
如果没有看到文件的路径,我不得不怀疑 WAMP 上的路径与您服务器上的路径不同。 Web 服务器有响应代码和错误日志是有原因的。 404 表示路径错误,403 表示您无权访问,500 表示内部服务器错误(检查日志)。 /home/Uploads 是否暴露在 Web 服务器上? 能否请您提供来自您的服务器的 /var/www/html 的内容列表。 【参考方案1】:无法下载的问题仅仅是因为您的文件路径错误。我对您的根目录(在大多数情况下)的建议是 var/www/html,创建一个名为 say somefoldername 的文件夹,然后手动将文件上传到该文件夹,然后将下载链接更改为
<a href="somefoldername/someFile.PNG">View</a>.
【讨论】:
【参考方案2】:“没有文件失败”与权限无关。当文件上传到服务器时,下载文件的路径很可能已更改。您应该手动检查文件是否位于
/home/Uploads/someDir/someFile.PNG
确实存在。如果没有,您可以相应地更改链接或将下载文件移动到适当的位置。
【讨论】:
文件和目录存在。我认为这可能是由于该目录对 Web 服务器不可用。我的理解是只有网络服务器只会发送 /var/www/html 中的文件。 也许尝试将下载文件移动到与 HTML 相同的文件夹或子文件夹中。然后相应地更改链接。这应该确保服务器可以访问该文件。【参考方案3】:解决此错误的另一个好方法是添加一个点 '.'在网址的开头:
<a download href="./someDir/someFile.PNG" >View</a>
这样您就不需要指明完整的网址。 如果将来 url 发生变化,您将不必修改 url。 就我而言,它运行良好,我希望它也能帮助你。
【讨论】:
以上是关于HTML 下载链接失败的可能原因都有哪些?的主要内容,如果未能解决你的问题,请参考以下文章