Apache-2.4

“不需要 ip”.htaccess 在單個 ip 中不起作用

  • September 23, 2019

我在阻止 .htaccess 中的 IP 時遇到問題

我放了

Require not ip 192.168.20.218

它可以工作,但它會阻止整個網路而不是阻止單個 IP。

有人可以解決這個問題嗎?

我正在使用 Ubuntu 14.04.3 LTS 在 Apache 2.4 上執行

**更新:**場景是這樣的,我192.168.20.218在我的電腦上使用 IP,我試圖做一個測試來阻止這個 IP 地址,我試過:

<RequireAll> 
Require all granted 
Require not ip 192.168.20.218 
</RequireAll>

這應該阻止我的訪問,但它仍然允許我訪問該頁面。如果我取出Require all granted它會阻塞整個網路。

您不能單獨使用否定指令來授權訪問。如文件中所述

指令的結果Require可以通過使用not選項來否定。與其他否定授權指令一樣<RequireNone>Require指令被否定時,它只能失敗或返回中性結果,因此可能永遠不會獨立授權請求

您需要執行以下操作:

<RequireAll>
Require all granted
Require not ip 192.168.20.218
</RequireAll>

因此,您允許所有人並排除特定的 IP 地址。

容器,<RequireAll>顧名思義,要求必須滿足所有包含的指令。

引用自:https://serverfault.com/questions/887728