特定の領域だけBasic認証を掛ける記事は山ほど出てくるのだが…
開発中のページは非公開にしておきたいけどapiだけはrestfulなので叩けるようにしておきたい
ディレクトリであればapi置いてるところにもう1個.htaccess置けばいいのだが
URLがエイリアスである場合は特定の文字列を許可領域として設定する必要がある
AuthType Basic
AuthName "Please enter your ID and password"
AuthUserFile /var/www/.htpasswd
SetEnvIf Request_URI "/*api*" auth_dir
SetEnvIf Request_URI "^/index.php$" auth_dir
# assets類は必要に応じて追加
SetEnvIf Request_URI ".(svg|js|ico)$" auth_dir
<RequireAny>
Require valid-user
Require env auth_dir
</RequireAny>
上記はWordpressのwp-jsonを使うシーンでの設定だが
汎用的に使えるので大きなナレッジになった。
色々試しまくって分からなかったのでやってもらった...けど今後も必要なので残しておく