【问题标题】:Link to a file in a higher level folder链接到更高级别文件夹中的文件
【发布时间】:2012-06-05 10:28:44
【问题描述】:

我在提供比我的根文件夹更高级别的文档时遇到问题。

<a href='../../home/folder/document.docx'>Proposal</a>

在浏览器中,上面的内容被解释为:

http://localhost/home/folder/document.docx

我在文件夹中看不到浏览器,然后我得到的答案是:

Not Found
The requested URL /home/folder/document.docx was not found on this server.

我已经在 Firefox 和 Chrome 中尝试过,它发生了同样的情况。我在 Linux 机器上使用 Apache Web Server。

任何帮助将不胜感激。

【问题讨论】:

标签: html file href


【解决方案1】:

您不能将访问者重定向到文档根目录(您的 index.html 所在的位置)之外的文件。 人们无法看到高于http://localhost/ 最终位置的文件。

解决方案是将 .docx 放在文档根目录中(index.html 所在的位置)。

但是,您可以让 PHP 使用 readfile 函数来提供文件。 但不要忘记 www-data 需要有权访问您提供的文件。

【讨论】:

  • 很公平,我不知道。但我认为我的客户会想要文档根目录之外的文件夹结构。
  • 嗯,有办法把它拉下来。您可以获得一个 php 脚本来提供 document.docx。 php.net/manual/en/function.readfile.php
  • 问题是我从 JavaScript 提供这个文件。
  • 没关系,您可以将您的 javascript 指向即:“download.php?file=document.docx”,然后 PHP 文件可以为 document.docx 提供服务。请注意,以上内容非常不安全!
  • 以上内容怎么可能不安全?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-09-10
  • 2016-06-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-09
  • 2018-02-26
相关资源
最近更新 更多