2017-05-16 4 views
-1

に設定されていない場合htaccessのための私のコードは、ユーザーセッションは、PHP

RewriteEngine On 
# you can add whatever extensions you want routed to your php script 
RewriteCond %{REQUEST_URI} \.(zip)$ [NC] 
RewriteRule ^(.*)$ "pathoffile"/download_file.php [L] 

and php code is 

<?php 
session_start(); 
if(!isset($_SESSION)) 
{ 
echo "Access Denied"; 
} 


?> 

あるとしてセッション場合、私は次のリンク、 をクリックしたとき、私は次のコードで問題に直面していますファイルをダウンロードする必要がありますが、そうではありません。

+0

あなたはdownload_file.phpファイル自体に制限を加えることができます。上に、あなたのセッション条件を書いてください。 – Bhavik

+0

要求をスクリプトファイルに書き直しました。その結果、スクリプトファイルは後で何が起こったのかについて完全に責任を持って処理されるようになりました。あなたのスクリプトは、ネガティブなケース(許可されていないユーザー、ダウンロードしない、エラーメッセージではなく)を処理するだけでなく、肯定的なケースも処理する必要があります。スクリプトはファイルの内容を読み込んでブラウザに出力する必要があります。 – CBroe

+0

'session_start();'を使うと、あなたの '$ _SESSION'配列は常に(空であっても)設定され、あなたのテストは常にtrueになります。セッションをどこかで作成してここでチェックしたい場合は、作成時にvarを設定し、セッションの配列でこのキーを確認する必要があります – Kaddath

答えて

0

すべてのファイルリクエストをdownload_file.php?with = filenameにリダイレクトすると、そこからユーザーセクションを検証できます。

関連する問題