如何防止直接访问应用程序中的文件夹/文件等文件?
我在应用程序文件夹中看到的是文件.htaccess和index.html,其中包括:
.htaccess
<IfModule authz_core_module>
Require all denied
</IfModule>
<IfModule !authz_core_module>
Deny from all
</IfModule>
index.html
<!DOCTYPE html>
<html>
<head>
<title>403 Forbidden</title>
</head>
<body>
<p>Directory access is forbidden.</p>
</body>
</html>
我在根项目目录中创建了一个新文件夹,名称为:客户,其中将存储客户的PDF文件。我将.htaccess和index.html这两个文件从应用程序粘贴到客户,但PDF文件仍然可以直接访问。
如何使它们像应用程序文件夹文件一样只能访问系统?
了解这种方式的工作原理。
在客户文件夹里,我放了像这样的.htaccess(用你的域替换域(,并将阻止直接访问文件,但将允许从系统访问
RewriteCond %{REQUEST_FILENAME} ^.*(pdf|)$
RewriteCond %{HTTP_REFERER} !^https?://(www.)?domain.com/ [NC]
RewriteRule . - [R=403,L]
最佳做法是将它们存储在公用文件夹之外。
要请求这些文件,您可以使用另一个主题中给出的答案:如何访问存储在根文件夹外部的文档(.pdf.doc等(