通过 htaccess 阻止 IP 地址,无法覆盖

通过 htaccess 阻止 IP 地址,无法覆盖

我已经在网页根目录的 .htaccess 中阻止了一些 IP 地址,如下所示:

<RequireAll>
Require all granted
Require not ip xxx.xxx.xxx.xx
</RequireAll>

我还在网页的子目录中使用了一些插件,这些插件有自己的 .htaccess,可以覆盖阻止条目,如下所示:

<Files file.php>
    Satisfy Any
    Allow from all
</Files>

有什么方法可以防止子目录中的 .htaccess 文件覆盖阻止,或者我必须在所有 htaccess 文件中阻止 IP 地址?

答案1

您必须阻止每个 .htaccess 或尝试更改主/根配置文件。

为什么不使用白名单(允许某些主机)?

查看此帖子:

.htaccess 文件是 Apache 的目录配置文件。它会影响 .htaccess 文件所在的目录及其下的整个目录树。如果服务器允许,则会处理文件系统路径(URL 映射到的路径)上的所有 .htaccess 文件,从父目录开始,然后深入到子目录。因此,在您的示例中,如果请求的是 A 的 public_html 目录下的文件,则“根”中的 .htaccess 文件将在 A 的 public_html 目录中的 .htaccess 文件之前进行处理。

当我在多个站点之间有多个 .htaccess 文件时,哪个是活动的?

子文件夹的 .htaccess

.htaccess - 将多个子目录重写到根目录

相关内容