我正在寻找解决方案,因为几个小时,我无法弄清楚如何从.htaccess文件中的AuthBasic中排除一个位置。 我在互联网上找到了解决方案,但它们只在没有启用RewriteRule的情况下工作。
我的.htaccess文件:
SetEnv APPLICATION_ENV development
SetEnvIf Request_URI ^/api noauth=1
Order Deny,Allow
Allow from env=noauth
Deny from all
Satisfy any
AuthType Basic
AuthName "Restricted"
AuthUserFile .htpasswd
Require valid-user
RewriteEngine On
IndexIgnore */*
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . index.php
当我评论最后一行(使用RewriteRule)时,此异常有效,但当然重写引擎无法正常工作。
答案 0 :(得分:1)
将您的SetEnvIf
行更改为:
SetEnvIf Request_URI ^/(api|index\.php) noauth=1