【问题标题】:Prevent user from accessing directory阻止用户访问目录
【发布时间】:2017-10-10 11:06:27
【问题描述】:

我已经到处搜索了,但很多都与我的情况相似,但并没有真正帮助。因此,我的网站允许用户在按下按钮时下载 PDF,但如果他们输入“test.com/ebook/good.pdf”之类的 URL,它将重定向到我的目录并向他们显示 PDF,而无需按下下载按钮。那么有没有办法阻止他们使用一些代码而不是 htaccess 进入我的电子书?

【问题讨论】:

  • 我认为可以防止直接 url 访问的唯一方法是使用 htaccess。 See here

标签: javascript php html css


【解决方案1】:

嗯,实际上,您必须同时使用 .htaccess 和一些代码。如果您使用的 PHP 没有像 LavarelCodeIgniter 这样的 MVC 框架,最简单的方法是在您的下载文件夹中放置一个 .htaccess 文件,该文件会将对该文件夹中文件的所有请求重定向到一个 index.php 文件,这将发送标题,迫使用户下载文件而不是直接打开它。

代码将如下所示:

<?php
$filename = basename($_SERVER['REQUEST_URI']);
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header("Content-Disposition: attachment; filename='" . $filename . "'"); 
header('Content-Transfer-Encoding: binary');
echo file_get_contents(__DIR__ . '/' . $filename);

【讨论】:

    猜你喜欢
    • 2012-07-30
    • 2017-04-03
    • 1970-01-01
    • 2012-08-22
    • 2012-07-27
    • 2015-07-10
    • 2020-02-10
    • 1970-01-01
    • 2011-09-16
    相关资源
    最近更新 更多