[PHP-users 205] Re: 会員の認証について

Ryuzi Kambe php-users@php.gr.jp
Fri, 22 Jun 2001 14:15:23 +0900


On Fri, 22 Jun 2001 13:11:59 +0900
"Tian li" <tian@technocraft.co.jp> wrote:

> はじめまして、ご質問させていただきます。
> 
> ApacheとPHP、PostgreSQLを使って、ホームページを作っています。
> 
> 最初のページは会員かどうかの確認ページです(HTMLです)、ユーザー名と
> パスワードをいれて、”提出”ボタンを押すとlogin.phpを起動します、この中に
> ユーザー名とパスワードが正しいかどうかの判断して、正しければ次のメイン
> 画面へ行きます。このメイン画面もHTMLです(PHPじゃない)、どうすれば、
> この画面のHTMLを直接はられてもアクセスできないようにできますか、必ず
> 認証されたユーザーしか見れないように。
> 
> みんなさんよろしくお願いします。

初心者同士、宜しくお願いします。

会員の認証をさせたいのなら、Apacheのhtacessを使う場合と、
PHPLibを使う方法があるのではないでしょうか。わたしが
わかる範囲で非常におおざっぱに答えますと、

PostgreSQLをバックエンドに持っているのなら、PHPLibを使う方が
そういうことをやるのに便利ではないでしょうか。

<htacessの場合>
たしディレクトリ単位でのアクセス制限なので、一度認証を通るまでは
直接リンクを張っても入れません。この場合PHPでもHTMLファイルでも
関係ないはず?

<PHPLibの場合>
アクセス制限をしたいファイルの前後に、<? ?>でセッション関数を
入れます。(末尾にはpage_close()を呼ぶ必要があります)
すると、データベース内に蓄積されたユーザ情報と一致するものを
入力してセッションを確率しない限り、そのファイルの中身は
表示されません。

ただ、Apacheのようにディレクトリに制限をかけられないので、
ディレクトリの一覧が表示できたり、単なるHTMLファイルや
セッション関数の指定されていないPHPスクリプトはそのまま
表示されてしまいます。(これも使いようによっては便利なのかも
しれませんが。

詳しくは、htacessやPHPLibというキーワードで、googleしてみると
いろいろ必要な情報が調べられると思います。

http://www.google.com/search?num=30&hl=ja&safe=off&q=PHPLib&lr=lang_ja

Ryuzi Kambe
kambe@mc.kcom.ne.jp