如何拒绝网络访问某些文件?
我需要做一个有点奇怪的手术。 首先,我在Debian apache2上运行(以用户www-data“运行”) 所以,我有.txt或.ini或任何扩展名的简单文本文件,都没有关系。 这些文件位于具有以下结构的子文件夹中: www.example.com/folder1/car/foobar.txt www.example.com/folder1/cycle/foobar.txt www.example.com/folder1/fish/foobar.txt www.example.com/folder1/fruit/foobar 。文本 因此,文件名始终相同,即“层次结构”的同上,只需更改文件夹的名称:/folder-name-static/folder-name-dinamyc/file-name-static.txt 我应该做的是(我认为)相对简单:我必须能够通过服务器上的程序(例如python,php)读取该文件,但是如果我尝试通过浏览器(将网址www数字化)来检索文件内容。 example.com/folder1/car/foobar.txt,或通过cUrl等。)我必须收到一个禁止的错误,或其他任何错误,但不能访问该文件。 即使通过FTP访问这些文件也是“隐藏的”,或者无论如何都无法下载(至少我与ftp根目录和用户数据一起使用),这也很好。 我能怎么做? 我在网上找到了这个文件,放在文件.htaccess中: <Files File.txt> Order allow, deny Deny from all </ Files> 似乎可行,但前提是该文件位于Web根目录(www.example.com/myfile.txt)中,而不位于子文件夹中。此外,在第二级(www.example.com/folder1/文件夹水果 /foobar.txt)将dinamycally创建..我想,以避免随时更改.htaccess文件时间。 可以创建一条规则,适用于所有具有给定名称的文件,例如* www.example.com / folder-name-static / * folder-name-dinamyc / *** file-name -static.txt *,这些部分总是相同的,只是**那一个变化? 编辑: 正如Dave Drager所说,我可以简化一下,将那些文件保留在Web可访问目录之外。但是这些目录也将包含其他文件,图像以及我的用户使用的东西,因此我只是尝试不使用重复的文件夹系统,例如: /var/www/vhosts/example.com/httpdocs/folder1/car/[other folders and files here] /var/www/vhosts/example.com/httpdocs/folder1/cycle/[other folders …