以為是 App Pool 的鍋,結果 IUSR 被 Windows 偷走了
上週為了讓同事拉一份檔案,我在測試機上把 IIS 專案資料夾開了個進階共用。東西傳完後我把共用關掉,繼續回頭改別的東西。 十分鐘後測試站同事回訊息:整個網站 HTTP 401,連 /favicon.ico 都打不開。 我第一個念頭是「我剛剛根本沒動 web.config 啊?」然後花了半小時繞遠路——這篇就是想分享這個坑,因為症狀跟原因之間的距離遠到不合理。 症狀 瀏覽器吃到 401 Unauthorized 連 CSS、圖片這類靜態檔都 401 IIS 沒有動過站點設定 專案程式碼沒動過 App Pool 跑得好好的,沒當機、沒停 重啟 IIS 沒用 翻開 IIS 記錄(C:\inetpub\logs\LogFiles\W3SVC...),關鍵那行: 12sc-status: 401sc-substatus: 3 401.3 的官方說明是 「Access is denied due to an ACL set on the requested resource」——翻譯:這不是 IIS 驗證設定的問題,是 NTFS 層級擋下來的。 我第一個走錯的方向本能反應是去翻 App...
