私は、ユーザーがサーバーにファイルをアップロードできますが、そのファイルを他のユーザーと共有することはできないアプリケーション(LAMP)に取り組んでいます。だから、私の問題はPHPで制限されたファイルアクセスを実装する方法は?
私のアプローチはこれでユーザBによってアップロードされたファイルにアクセスすることができない利用者Aを確保し、安全なメカニズムを実装することです:
各ユーザーはそのファイルのフォルダ(/アップロードを持って- /ユーザA)
- ユーザーがサブディレクトリ(/ユーザAにアクセスする権限を持っている場合、PHPスクリプト
- チェックへのアップロードフォルダ/へのすべてのアクセスをリダイレクトするように.htaccessファイルを追加します)
あなたが見ることができますこのアプローチではnyの欠点?もっと良い選択肢?
私が考えることができる欠点の1つは、 '.htaccess'ファイルがかなり遅く、サーバーに課金されていることです。サーバ設定ファイルで設定するほうがはるかに良いでしょう。 – Nightfirecat
ファイルへのハードリファレンスを作成するのではなく、 'download.php?id = 1234'のようなものを作成し、データベースから' 1234'をチェックするだけで、ユーザーがファイルをダウンロードする権限を持っているかどうかを確認できます。すべて。 –
私は2番目の@Ahmetを追加し、ファイルを安全な方法で保存するための良い習慣は、あなたのドメインの外に(まだあなたのサーバー上に)保存することです。次に、download.php?id-1234を使用してファイルを呼び出します。 – GiladG