Phpmyadmin 設置“允許來自”和“.htaccess 密碼”不能一起工作
我正在按照digitalocean 的本教程進行操作,我已經成功設置了 require ip 並允許 ip,這樣只有我的 ip 地址才能連接到網頁。
但是,在設置 Web 伺服器身份驗證門的最後一部分,當我啟用 htaccess 並創建 htpasswd 時,它會禁用對 ip 地址的限制,以便每個 ip 都可以連接到它。
然後,當我刪除 htaccess 文件時,網路登錄再次起作用。
有沒有人有任何想法?
如果您同時遵循這兩個教程,您將擁有(第二個來自
.htaccess
):Require ip your_workstation_IP_address Require valid-user
來自 mod_authz_core
Require
指令文件:
Require
當在單個配置部分中使用多個指令並且不包含在另一個授權指令中<RequireAll>
時,它們會隱式包含在<RequireAny>
指令中。因此,第一個授權使用者授權整個請求,隨後Require
的指令被忽略。關於合併:
<Directory>
(正則表達式除外)並.htaccess
同時完成(.htaccess
如果允許,則使用覆蓋<Directory>
)如果你真的需要這兩個規則:
- 將它們放在相同的配置部分中。
- 把它們放在裡面
<RequireAll>
。但實際上,如果您已經
Require ip
限制了一個(或幾個)IP 地址和 PhpMyAdmin 登錄表單,則Require valid-user
實際上不會添加任何額外的安全層。本教程遺漏了一個關鍵步驟,比以下任何
Require
陳述都重要:但是,您的 phpMyAdmin 界面將在我們選擇的新位置可用:
http://server_domain_or_IP/nothingtosee
僅提供受 TLS 保護的 PhpMyAdmin!
這應該是真的
https://server_domain_or_IP/nothingtosee
。這很重要,否則您可能會洩露您的數據庫登錄資訊並洩露數據庫中的所有數據。啟用 HTTPS,例如使用免費的 Let’s Encrypt證書並遵循 Apache 的SSL/TLS 強加密:操作方法。