浜松のWEBシステム開発・スマートフォンアプリ開発・RTK-GNSS関連の開発はお任せください
株式会社シーポイントラボ
TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:静岡県浜松市中区富塚町1933-1 佐鳴湖パークタウンサウス2F

下位ディレクトリでの RewriteRule off と認証

Apache 2.2 へ変更して検証をしているのですが悩んでいた所が解決したので、メモがてら残します。

ドキュメントルート (/htdocs/) に .htaccess を設置し WordPress 用の RewriteRule を入れ込んでいて、下位ディレクトリの .htaccess で AuthType Basic を指定した場合、どうしても 404 エラーとなる状況でした。

本来であれば基本認証ダイアログを表示し、認証通過した場合のみサブディレクトリ内のページを表示してほしかったのですが、認証ダイアログは出ず、そのまま WordPress の 404 ページが表示されてしまう形です。

調査の結果、ErrorDocument 401 /error/401.html と指定しているにもかかわらず、401 ファイルが存在せず 404 となり、そもそも認証ができていませんでした。

基本認証を要求するサブディレクトリではAuthType Basic 関連行とは別に ErrorDocument 401 も指定。これです。

ErrorDocument 401 "Unauthorized Access"
RewriteRule Off

かなり前からのアルアルですが、またハマったので再度書きます。

  • この記事いいね! (0)