Apache-2.2

AH00027:從 Apache 2.2 升級到 2.4 後沒有驗證完成錯誤

  • May 2, 2016

我最近將 Cent OS 7 上的 Apache 從 2.2 更新到 2.4,更新後我無法訪問根文件夾,

我收到以下錯誤:

[Fri Apr 29 16:30:19.977037 2016] [core:error] [pid 32095] [client 10.211.55.1:44429] AH00027: No authentication done but request not allowed without authentication for /. Authentication not configured?

正如在授權部分中提到,您仍然可以通過載入模組來使用舊指令 Order、Allow、Deny 和 Satisfy(我顯然已經載入了):

LoadModule access_compat_module modules/mod_access_compat.so

我的目錄指令如下:

<Directory />
   Options FollowSymLinks
   AllowOverride All
</Directory>

我不確定問題可能是什麼,我真的很感激這裡的一些幫助。

我不熟悉 Cent OS 預設目錄結構,但你會想要遵循這樣的:

<Directory />
  Require all denied
  AllowOverride None
  Options None
</Directory>

<Directory /PATH ON SERVER TO YOUR DOCUMENT ROOT>
  Require all granted
  AllowOverride All
  Options FollowSymLinks
</Directory>

要使用 Apache 2.4 指令,您需要載入mod_authz_core

LoadModule authz_core_module modules/mod_authz_core.so

如果您沒有任何其他舊的(即 Order、Allow、Deny 和 Satisfy)訪問控制指令,請註釋掉 access_compat 模組:

#LoadModule access_compat_module modules/mod_access_compat.so

如果您確實有舊的 2.2 訪問控制的其他實例,請盡可能更新它們以使用 Apache 2.4 Require 指令或類似的 Apache 2.4 身份驗證指令。新舊混用不是一個好主意。如文件中所述,可能會出現“不可預測的”結果。

您需要允許 apache 讀取訪問權限;

<Directory />
    Options FollowSymLinks
    AllowOverride All
    Require all granted
</Directory> 

應該管用

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