2011-03-21 24 views
0

我有一个PHP页面。我需要让用户很难直接下载链接。为此,我需要一个js函数,在页面加载后自动在10秒后开始下载pdf。我不想提供下载链接。另外我不能使用onpageload。 PDF必须下载。隐藏PDF使用JS的URL

+0

隐藏URL以保护资源不是一个好主意。你最好在服务器上实现10秒的延迟。 – Lekensteyn 2011-03-21 12:55:29

回答

0

由于大多数浏览器都会告诉你下载的文件来自哪里,我想你可能想用mod_rewrite或其他自定义参数来隐藏文件本身。你不需要为此使用JavaScript。

然后你可以简单地用PHP推文件like this solution

0

是绝对没有办法隐藏来自最终用户的URL - 所有他们需要做的就是使用Fiddler 2,萤火虫或类似工具来查看所请求的URL

+0

啊,你是对的,但只限于JavaScript。但是这对于PHP来说很有可能...... – 2011-03-21 13:09:45

+0

对不起,我认为这很明显 - 客户端必须检索一个URL - 即使这是一个PHP脚本,它仍然对客户端可见。当然,PHP脚本可以从任何地方检索pdf,在运行中生成PDF,抛出500错误或执行其他任何想要的操作。 – Basic 2011-03-21 17:06:27

0

让你的下载页面重定向到PHP文件那会下载它。如果它可以下载它,它会将用户重定向回到上一页,因为下载没有正确的内容类型,尽管它可能只是一个普通的.html文件。你不需要Javascript功能来做到这一点:

<meta http-equiv="refresh" content="10;url=http://mysite/d.php?file=resume"> 

我推荐Smart File Download,从zubrag.com,如果你不已经有一个PHP文件专门为下载。

+0

我知道它不能被隐藏,只是让它对普通用户更复杂。只需要一个JS在X秒的页面加载后自动开始下载。我有一个专门为低地的页面 – ITGuru 2011-03-22 08:34:17