我的网站上有.htpasswd
保护措施,运行良好。当我通过 PHP CLI 调用将所有内容放入缓存的脚本时,我收到 401 错误。这里的问题是.htpasswd protection
。
在 CLI 调用中,我定义了我的环境(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 启动时命令行上是否设置了参数。它无法检查环境变量。