apache上のWordpressで管理画面ディレクトリにBASIC認証が掛けているのですが、テーマから wp-admin/admin-ajax.php を呼ばれているため除外する必要がありました。
これを普通に.htaccessに
<Files admin-ajax.php> Order allow,deny Allow from all </Files>
と追記しても、結局BASIC認証のほうで引っかかってしまうためうまくいきません。
BASIC認証で特定のファイルを除外する方法を調べました。
.htaccessで特定のファイルやディレクトリのみBASIC認証を解除する | ザ サイベース
この場合「Satisfy any」指定を追加して、この条件のみでもallowするようにすればうまくいくようです。
<Files admin-ajax.php> Order allow,deny Allow from all Satisfy any </Files>
ちなみにこの設定は、そのままWordPressの公式にも案内がありました。
ブルートフォース攻撃 - WordPress Codex 日本語版
あと余談ですが「allow,deny」の間にスペース入れるとエラーになるんですよね。
ちょっとハマりました。
Order指示子のdenyとallowをカンマで並べる時、間に空白を入れてはいけない。 - ぐらめぬ・ぜぷつぇんのはてダ
このへんのSatisfyとかallow,denyの順番のこととかは、下記ページにまとまっていて大変参考になります。