2016-08-14 10 views
0

私はPHPサーバファイル管理システムをコーディングしたいと思いますし、保護に関してはどうなるか分かりません。つまり、すべてのユーザーは、ユーザーがサーバーにアップロードするファイルの正確なURLをブラウザに入力するだけで済みます。f:htpp:///www.domain.com/files/user_name/file.doc。アップロードされるファイルは非常に繊細で、ログインしたときとは別の方法でアクセスすることはできません:xこの作業を行う方法がわかりませんファイル管理システムとその保護

+3

。 – andrewsi

+0

まあ、それはちょっとした論理のようです、大丈夫です。したがって、Webrootフォルダにない場合は、完全に安全です。 – Ethris

+0

URLに入力してファイルにナビゲートすると誰かが完全に安全です。許可されたファイルだけを扱うためにPHPコードに依存しています。 – andrewsi

答えて

0

アップロードされたファイルは、これらのファイルにアクセスするためのスクリプトを作成します。
/var/www/htmlと設定(外部から使用可能なディレクトリ)
の/ var/mydataという(あなたがにアップロードされたファイルを送信しようとしているディレクトリ:exempleについては

は、apache2の設定で、あなたはこれを持っている可能性があり)

そして、あなたのようなスクリプトを持つことができます。
/var/www/html/get_file.php

このスクリプトは、ユーザーがリソースにアクセスして、ダウンロードのヘッダを強制的に許可されていることを確認します。
zipファイルのための 例:あなたは、ファイルへの直接アクセスをブロックするように.htaccessのルールを追加したり、それらにアクセスする唯一の方法は、あなたのPHPコードを経由してあるので、単純にWebルートの外にそれらを格納することができ

$attachment_location = "/var/mydata/myfile.zip"; 
header("Content-Type: application/zip"); 
header("Content-Transfer-Encoding: Binary"); 
header("Content-Length:".filesize($attachment_location)); 
header("Content-Disposition: attachment; filename=filePath"); 
関連する問題