我的网站托管服务商不允许.htaccess
。现在如何在这种情况下停止目录列表?
除了index.php/index.html
&之外是否还有其他选项? .htaccess
?
答案 0 :(得分:2)
如您所知,在Apache服务器上,只有在您要访问的目录中没有index.htm,index.html,index.php等时才会给出目录列表。
所以最简单的解决方案是每个文件夹中都有一个空白的index.php - 尤其是因为你无法自己更改配置。
我刚才写了下面的代码 - 你把它放在你不希望别人得到目录列表的每个文件夹中 - 它将用户返回到他们试图访问的网站的索引。
您需要在目录的根目录中放置一个README.txt文件才能使其正常工作 - 或者只需将其更改为该文件即可。
<?php
$i=0;
while(!file_exists('README.txt')){
chdir("..");
$i--;
}
header("Location: ".substr($_SERVER['PHP_SELF'],0,strrpos(dirname($_SERVER['PHP_SELF']),'/',$i)));
?>
上述更简单的替代方案就是:
<?php header("Location: /"); ?>