|
掲示板<10>2006/4/22 from=TOZ 会員制用のCGIではなく、「.htaccess」でアクセス制御ができないかと考えて、ホームページや知人に聞きながら、 やっと実験に成功した。まず、アクセスを制御したいディレクトリに「.htaccessファイル」を入れる。このファイルに 書く中身は、 ---------------------------------------------------------------- AuthUserFile /var/www/html/(アクセス制御のディレクトリ名)/.htpasswd ^^^^^^↑^^^^^ 私のapacheサーバーのHTML用の場所 AuthName ユーザー名とパスワードを入力して下さい。 ^^^^^^^^^^↑^^^^^^^^^^^^^^^^^^^^^^^^^^^^ メッセージ文章(空白があるときは、前後を"と"で囲むこと) AuthType Basic require valid-user ---------------------------------------------------------------- 以上の4項目を書き、ファイル名を「.htaccess」とするのだが、制御ディレクトリにアップロードするとき、ファイル 名の前についている「.(ドット)」が付くように気をつける。また、パーミッションは「604」または「rw----r--」 とすること。さて、ユーザー名とパスワードのファイル「.htpasswd」の作成だが、これが分かるまで難しかった。 ずいぶん時間がかかった。まず、linuxの画面にして、 ---------------------------------------------------------------- [root@webmin ○○]#htpasswd -c .htpasswd ID ^↑^ ^^↑^^ ^↑^ root | アクセス制御のディレクトリ名 権限 私のサーバー名 New password:PW Re-type new password:PW ---------------------------------------------------------------- これで、IDとPWが設定されたわけだが、この「.htpasswd」ファイルの中は「ID:Dxb9krs546FHe」とランダムな PW表示がされておるが、上記で打ち込んだパスワードで大丈夫なので、安心して欲しい。このファイルもパーミッ ションが「604」である。 これで、この制御したいホームページにアクセスすると、IDとPWを聞く画面が出てきて、3回失敗すると、エラー 表示がされる。正確なIDとPWであれば、当然中に入ることができる。 もう1つ大事なことがありました。apacheサーバーの設定ファイル「httpd.conf」の一部をNoneからAllに変えなけれ ばなりません。 ---------------------------------------------------------------- AllowOverride None ^↑^ ここをAllにする ---------------------------------------------------------------- これで、制御することができました。
|