Apache-2.2

自定義 401 頁面 - 嘗試使用 ErrorDocument 處理請求時遇到 401 Authorization Required 錯誤

  • September 26, 2018

我一生都無法弄清楚為什麼這不起作用。我有 2 個 apache 指令。除了每個人都應該能夠訪問的登錄頁面之外,我的整個站點都應該需要身份驗證。當我這樣做時,我收到以下錯誤:

此伺服器無法驗證您是否有權訪問所請求的文件。您提供了錯誤的憑據(例如,密碼錯誤),或者您的瀏覽器不了解如何提供所需的憑據。

此外,在嘗試使用 ErrorDocument 處理請求時遇到 401 Authorization Required 錯誤。

我的 Apache 配置

<VirtualHost *:80>
 ServerName example.com
 DocumentRoot C:/htdocs/example
 <Directory "C:/htdocs/example">
   Options FollowSymLinks
   AllowOverride All
   Order allow,deny
   Allow from all
   AuthName "Example"
   AuthType SSPI
   SSPIAuth On
   SSPIAuthoritative On
   SSPIOfferSSPI On
   SSPIOfferBasic On
   SSPIPerRequestAuth On
   require valid-user
   ErrorDocument 401 /login/alternate
 </Directory>
 <Location /login>
   Allow from all
   Satisfy Any
 </Location>
</VirtualHost>

您還需要在/login/alternate沒有登錄的情況下允許它才能正常工作

<Location /login/alternate>
 Allow from all
 Satisfy Any
</Location>

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