.htpasswd
我的網站有很好的保護措施。當我呼叫一個透過 PHP CLI 將所有內容放入快取的腳本時,我收到 401 錯誤。這裡的問題是.htpasswd protection
.
在 CLI 呼叫中,我定義了 env ( ENV=cron
),如果是,我如何告訴我.htaccess
不要求使用者名稱和密碼env=cron
?
我目前的程式碼.htaccess
是:
<IfDefine env!=cron>
AuthType Basic
AuthName "internal"
AuthUserFile /path/to/my/.htpasswd
Require valid-user
</IfDefine>
我使用的是 apache 2.2 而不是 2.4,這會讓這件事變得更容易。解決這個問題的正確方法是什麼?
答案1
在 Apache 2.2 上,您可以藉助該Satisfy
指令來完成此操作。
例如:
AuthType Basic
AuthName "internal"
AuthUserFile /path/to/my/.htpasswd
Require valid-user
Order allow,deny
Allow from env=cron
Satisfy Any
(預設為Satisfy All
)
該<IfDefine>
指令(在 Apache 2.2 上)只能檢查 Apache 啟動時是否在命令列上設定了參數。它無法檢查環境變數。