a.com
パスワードで保護された drupal Web サイトがあります。ただし、すべてのa.com/api/...
URI がそうであってはなりません。だから私は読んだSetEnvIf
:
AuthName "Stage"
AuthType Basic
AuthUserFile ~/.htpasswd
SetEnvIf Request_URI ".*data_sheets.*\.pdf" noauth
SetEnvIf Request_URI "/api/.+" noauth
SetEnvIfNoCase Request_Method OPTIONS noauth
Order Deny,Allow
Deny from all
Require valid-user
Allow from env=noauth
Satisfy Any
ただし、/api/foobar
URI はまだパスワードを要求しています。これは Drupal の Web サイトであるため、anubhava の助けを借りて、index.php によるリクエストの処理方法に関係があると判断しました。
それに対処する方法は?
編集
追加する
RewriteCond %{REQUEST_URI} ^/api/ [NC]
RewriteRule ^ - [E=noauth]
直後の
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^ index.php [L]
役に立たなかった