如果是.htaccess:DirectoryIndex,则阻止文件访问

时间:2018-06-07 19:34:02

标签: php apache

如果可能是非常奇怪的问题。 我有这个:

DirectoryIndex index.php wait.php

规则如下:load index.php,正常站点,如果一切正常。但是如果正在重写缓存,请加载wait.php,这将占用“页面将在几秒钟内加载,耐心等待”。

我试图锁定index.php:

$f = fopen('index.php', 'r');
flock($f, LOCK_EX | LOCK_NB);
sleep(10); // so cache is beign writed

当此文件结束时,锁定将无效。但是这个想法不起作用:我无法在Total Commander中打开index.php,而另一个浏览器appache将加载index.php。所以它毕竟没有锁定它。

1 个答案:

答案 0 :(得分:2)

如果缺少上一个文件,DirectoryIndex将仅尝试列表中的下一个文件。

您的index.php不会丢失,只是被锁定了。

您应该使用index.php来处理要使用的文件的逻辑,或者甚至可以使用其他脚本在缓存时移动或重命名index.php。