開発環境や、限定公開にしたいサイトやページなどにパスワードを使用したアクセス制限をかけるBASIC認証はかなり便利ですよね。
「.htaccess」ファイルと「htpasswd」ファイルを使用することで、簡単に制限をかけることが可能です。
僕はいつもこのサイトを使って、オンラインで作成しています↓
便利なBASIC認証ですが、特定のファイルやディレクトリにだけ、パスワード制限をかけてたくない場合ってありますよね。
そんな時は、「.htaccess」に以下のように書いて、認証を解除したいフォルダに設置します。
[text]Satisfy anyorder allow,deny
allow from all[/text] 特定のファイルを指定する場合は、
[text]<Files "example.html">
Satisfy any
order allow,deny
allow from all
</Files>[/text] のように書きます。
特定の拡張子を指定する場合はこんな感じです。
[text]<FilesMatch "\.(gif|jpe?g|png)$">[/text]※ファイル名などで正規表現を使う場合には、FilesよりもFilesMatchを使用することが推奨されているようです。
ファイル名ではなく、ディレクトリの場合はこんなふうに書けます。
[text]<FilesMatch "\/?example">
Satisfy any
order allow,deny
allow from all
</FilesMatch>[/text]
※exampleディレクトリ内のBASIC認証を解除。
なお、「DirectoryMatch」とかは、Apacheのconfファイルに書くものであって、.htaccessには記述できないみたいなので注意が必要です。
以上、特定のファイルやフォルダでBASIC認証を解除する方法の紹介でした!