.htaccessはサブディレクトリには影響しません

.htaccessはサブディレクトリには影響しません

私はウェブサイト全体(現時点では開発用)をパスワードで保護する必要があります。そこで、.htaccessとファイルを作成しました.htpassword.htaccess

AuthUserFile /my/absolute/path/.htpassword
AuthName "Protected"
AuthType Basic
Require valid-user

私のディレクトリツリーは次のようになります

/var/www
|--- file.php
|--- .htaccess
|--- dir
|   |--- text.html
|--- file2.php

file.phpまたはfile2.php( に直接含まれるファイル)にアクセスしようとすると/var/www、Web ページはパスワードで保護されます。ただし、サブディレクトリ ( ) 内のファイルには認証なしでアクセスできます。には/dir/text.htmlがないことは間違いありません( を使用します)。.htaccess/var/www/dirls -A

ウェブ上で、.htaccessディレクトリとすべてのサブフォルダに効果があるはずだと見たことがありますが、それがまさに私が望んでいることです。

私の場合、サブディレクトリ内のファイルに効果がないのはなぜかご存知ですか? もしそうなら、どうすれば機能するようになりますか?

答え1

静的 IP をお持ちの場合は、仮想ホスト設定で 1 つの IP からのみ Web サイトへのアクセスを許可するだけです。

<Directory /> Order Deny,Allow Deny from all Allow from 127.0.0.1 #your IP </Directory>

答え2

セッションログインとヘッダー上の禁止されたRESTアクセスのためのカスタムコードをPHPで記述できます

session_start();
if(isset($_SESSION['user']))
{echo "do the stuff";}
else
{header("location:login");}

関連情報