Windows

如何調查間歇性 Windows Server“登錄失敗”問題?

  • May 12, 2021

我目前正在開發一個首選 Apache Web 伺服器的項目,但 Windows 是強制性的。我已經有幾年沒有使用 WAMP 了,但我相信這些天它執行良好且穩定。我們有四個 Web 伺服器,每個伺服器都是兩個負載平衡的對。Apache 作為 Windows 服務執行。

一位同事發現一些資訊表明在自定義帳戶而不是“本地系統帳戶”下執行 Apache 更安全。因此,已在每個框上創建了一個本地帳戶,並將憑據輸入到“服務屬性”對話框的“登錄”選項卡中。

有時當 Apache 配置發生變化時,我需要重新啟動每個服務。為此,我在“服務”視窗中選擇 Apache2.4 條目並點擊重新啟動按鈕。但是,對於所有盒子來說,它是否會成功是一觸即發的。當它失敗時,我收到一條 Windows 錯誤消息:

Windows 無法在本地電腦上啟動 Apache2.4 服務。

錯誤 1069:由於登錄失敗,服務未啟動。

因此,每當發生這種情況時,我都會盡職盡責地再次添加服務密碼,然後它總是會啟動。我的一個猜測是對話忘記了給它的密碼。它永遠不會忘記使用者名。

我在“本地安全策略”->“本地策略”->“使用者權限分配”->“作為服務屬性登錄”中檢查了授予該本地使用者的權限,發現該使用者正常在其中,但如果失去,則Apache 重啟將失敗。

在研究這個時,我發現了這個相同的場景(儘管這種情況下的服務是 PostgreSQL)。但是,在我看來,使用本地系統帳戶的公認答案並不是對所提出問題的答案。問題應該是:為什麼使用者失去了作為服務登錄的權利?

如果這些 Windows 伺服器是域的成員,則某些組策略可能會覆蓋此“作為服務登錄”的本地策略。

重新載入配置不需要重啟 Apache HTTP Server,你可以執行

C:\Apache24\bin\httpd.exe -k restart

這樣,只有子 Apache HTTP Server 程序將重新啟動,並且您的伺服器不會錯過任何請求。

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