訪問受密碼保護的目錄後收到 403 Forbidden

訪問受密碼保護的目錄後收到 403 Forbidden

我正在使用 nginx,當使用密碼保護目錄並輸入登入詳細資訊時,我收到了 403 錯誤 (:O)

        位置〜^/文檔{
        auth_basic "存取受限。";
#老線。
# auth_basic_user_file /private/pass;
#新隊。
       auth_basic_user_file /var/www/site.com/private/pass;
}

pass 檔案就像

thisID:thisPass: 你好評論!

有什麼建議嗎?

答案1

儘管它與您收到的錯誤不匹配...

pass 檔案就像

thisID:thisPass: 你好評論!

是否假設密碼實際上已加密?我認為應該是;我懷疑您是否可以簡單地將人類可讀的密碼放入該密碼檔案中。

如果 nginx 需要該檔案中的編碼/加密密碼,那麼如果儲存的密碼使用其他格式,它將永遠找不到良好的匹配。 (為了找到匹配項,它將對使用者輸入的密碼進行編碼,並將編碼後的輸入與文件中已知的編碼密碼進行比較。)事實上,根據文件,密碼必須由函數 crypt(3) 編碼。您可以使用 Apache 的 htpasswd 程式建立密碼檔案。

這仍然不能解釋實際的錯誤訊息,但是當密碼檔案保存人類可讀的密碼時,那麼這肯定會產生一個402 Unauthorized403 Forbidden

人們也可以在線上創建這樣的編碼密碼,各種網站

答案2

我處理此類事情的經驗是,當電腦告訴您文件或目錄不存在時......它不存在! :-)

嘗試尋找相對於伺服器根目錄的文件,即

auth_basic_user_file   /private/pass;

答案3

我想位置/文件路徑與預期不符。您確定檔案路徑的語法絕對正確嗎?

另外,伺服器是否具有相關密碼檔案的讀取權限?

相關內容