Php 如何阻止对文件夹的访问(内部页面除外)
我有一个非常简单的页面,用户可以登录并下载pdf。pdf的路径直接从数据库中提取,并回送到链接中。关于我的脚本的一切都很好,除了我需要阻止任何人访问PDF文件夹。我已尝试将htaccess文件添加到pdf目录,其中包含以下内容:Php 如何阻止对文件夹的访问(内部页面除外),php,mysql,apache,.htaccess,http,Php,Mysql,Apache,.htaccess,Http,我有一个非常简单的页面,用户可以登录并下载pdf。pdf的路径直接从数据库中提取,并回送到链接中。关于我的脚本的一切都很好,除了我需要阻止任何人访问PDF文件夹。我已尝试将htaccess文件添加到pdf目录,其中包含以下内容: Order deny,allow Deny from all Allow from localhost 以及其他一些变化,每次它只是打破了pdf的链接。我做错了什么?回传链接直接获取PDF是不够的Allow from localhost表示服务器可以访问它,但用户不能
Order deny,allow
Deny from all
Allow from localhost
以及其他一些变化,每次它只是打破了pdf的链接。我做错了什么?回传链接直接获取PDF是不够的
Allow from localhost
表示服务器可以访问它,但用户不能。因此,您必须制作一种“代理”php脚本,使服务器触发下载:
<?php
$pathToThePdf = $_GET['pdf_path'];
header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="mydownload.pdf"');
readfile($pathToThePdf);
如果将localhost
更改为IP地址或服务器IP,它将正常工作
如果您特别要http://localhost
您需要使用::1
,否则使用服务器的IP地址
order deny,allow
deny from all
allow from ::1
您可能需要编写一个php脚本来实际获取pdf并触发下载。回显链接是不够的,因为用户不是本地主机。
order deny,allow
deny from all
allow from ::1