答案1
解决这个问题最简单的方法就是使用.htaccess
规则。这里有一个小模板供您参考:
/public
在您的目录中创建一个名为.htaccess
将其粘贴到文件中:
Options +MultiViews +FollowSymLinks Options -Indexes DirectoryIndex index.php <FilesMatch "\.(htaccess|htpasswd|inc|log|sql|user|token)$"> Order Allow,Deny Deny from all </FilesMatch>
其中一些规则也可以添加到
<directory>
域配置文件中的条目中(可能是/etc/apache/sites-available
)。
此.htaccess
文件将允许人们访问符号链接的文件(在合理范围内),并阻止显示目录索引。index.php
如果某人只是输入您网站的域名而没有指定文件名,它还将自动将某人定向到。如果您没有index.php
,请创建一个index.html
包含一些内容的目录并DirectoryIndex
相应地更改值。
在本<FilesMatch>
节中,特定扩展名的文件被明确禁止外部访问。因此,如果您的目录database-backup.sql
中有一个名为的文件/public
(无论如何,这是一个坏主意),它将无法下载。
这不是一个完全的解决方案可以确保人们不会扫描整个服务器,但是它确实减少了人们这样做的便利。
希望这可以帮助。