禁止 Apache 显示目录结构列表,只要把 Option 中的 Indexes 去掉即可。
<Directory "D:/Apa/blabla">Options Indexes FollowSymLinks #---------->Options FollowSymLinks AllowOverride None Order allow,deny Allow from all</Directory>只要把上述代码中的 Indexes 去掉,就可以禁止 Apache 显示该目录结构。用户就不会看到该目录下的文件和子目录列表。
Indexes 的作用就是当该目录下没有 index.html 文件时,就显示目录结构,去掉 Indexes,Apache 就不会显示该目录的列表
<?php/**
* PHP中列出目录中的目录和文件的几种方法
*/
//兼容PHP4和PHP5的写法
function getFileList($directory) {
$files = array()
if(is_dir($directory)) {
if($dh = opendir($directory)) {
while(($file = readdir($dh)) !== false) {
if($file != '.' && $file != '..') {
$files[] = $file
}
}
closedir($dh)
}
}
return $files
}
//PHP5中的简单方法
function getFileList2($directory) {
$files = array()
if(is_dir($directory)) {
if($files = scandir($directory)) {
$files = array_slice($files,2)
}
}
return $files
}
//使用PHP5面向对象的写法
function getFileList3($directory) {
$files = array()
try {
$dir = new DirectoryIterator($directory)
} catch (Exception $e) {
throw new Exception($directory . ' is not readable')
}
foreach($dir as $file) {
if($file->isDot()) continue
$files[] = $file->getFileName()
}
return $files
}
//测试代码
$dir = dirname(__FILE__)
var_dump(getFileList($dir))
?>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)