2011-10-26 9 views
1

私の友人と私は、ユーザーが画像をアップロードできるウェブサイトを構築しています。私たちはこれをすべて整理しましたが、メンバーがサーバー上のファイルにアクセスするのを止める方法を知っていますが、メンバーはアクセスできます。私たちにこれをさせ、ユーザーがログインしているかどうかを確認するPHPスクリプトとリンクさせるApache modがありますか?Apache/PHPを使用してログインしていないユーザーからディレクトリを保護する方法

+0

ダウンロードリンクに 'readfile()' -wrapperスクリプトを使用するか、RewriteCond経由でプローブするセッションIDでセットアップ時限ファイルを使用してください。 – mario

+0

[PHPのフォルダを保護する](http://stackoverflow.com/questions/3120174/php-protect-a-folder) – mario

+0

.htaccessファイルを使用してフォルダを保護することもできます –

答えて

3

はい認証に使用できるapacheモジュールがあります:mod_authです。

複数のバックエンドをサポートしているため、アプリケーションで複数のバックエンドをサポートすることができます。

Apache自体も認証時に拡張可能ですが、mod_auth_mysqlという複数のバリエーションが存在するmysqlデータベースをサポートする他のモジュールがあります。より良い選択は、Apache 2.2の場合はmod_authn_dbdです。これは、複数のフレーバーのSQLデータベースへの汎用インターフェースを提供するからです。また、ldapがサポートされています:mod_authnz_ldap

もう1つの方法は、認証にPHPを使用してから、サーバーにファイルを提供するように指示することです。これはしばしばサードパーティのモジュールであるまたはmod_xsendfileと呼ばれます。

PHP専用のソリューションをお探しの場合は、その話題の1つの質問はHow to password protect files (images, video, zip) dynamically from public and allow access to members only?です。

関連する問題