2012-03-22 7 views
0

だから、私は次のような状況があります。
は、私は、ユーザーがwww.server.com/download.phpは、ユーザ名とパスワードを聞かれるページを入力すると、有効な場合、サーバーは、ファイルファイルを生成します。 .csvをWebrootに置き、ユーザーをそのファイルにリダイレクトします(ファイルをダウンロードさせる)。
このタスクは、wgetまたはcurlまたは他の自動ダウンロードツールを使用して簡単に行うことができます。
私はすでにSISTEMの作業、私はできwgetのwww.server.com/download.phpを持っていると私はfile.csvになりを入手!
file.csvがWebrootにあり、誰でも直接アクセスしてダウンロードでき、誰でも起動できます。download.phpサーバーから自動生成されたファイルをダウンロードする前に、ユーザーがパスワードを入力するように求める方法はありますか?

すべての懇願は大歓迎です!

+3

ファンシーパスワード管理が不要な場合は、apacheにプレーンジェーンhttp基本認証パスワードプロンプトを使用してダウンロードスクリプトをpw保護できます。そして.csvファイルをwebrootから移動して、download.phpスクリプトからのみアクセス可能にします。 –

+0

Marcが正しいです。ちょうど.htpsswdファイルを使用してください。 .htpsasswdを使用している –

+0

は、DBまたは他の場所に格納されているパスワードをハッシュ化した場合と比較して、極端に安全ではありません。 – codejunkie

答えて

0

サーバー側user-authenticatedフラグがtrueに設定されている場合にのみアクセス可能な保護されたディレクトリにダウンロードファイルを置きます。認証フォームとエラーページをパブリックディレクトリに配置します。保護されたディレクトリにアクセスしようとする不正なトラフィックをエラーページに戻す

0

phpでユーザを認証し、file.csv @ webrootに誘導することをお勧めします。実際にはスクリプト(htaccessによって書き換えられます)ユーザが認証されているかどうかをチェックし、もしそうなら、彼のファイルを取得します。その場合、すべてのファイルは任意の名前で任意の場所に保存することができます。

関連する問題