アップロードされたファイルのフォルダがあり、その中にサブディレクトリがあり、ファイルが呼び出されるたびにユーザーのアクセス許可を確認する必要があります。 .htaccessはURLを維持しながらuploaded_filesディレクトリ内のindex.phpファイルを呼び出し、index.phpがデータベースに対してファイルをチェックできるようにして、ログインしているユーザがファイルにアクセス権を持っているかどうかを確認します。 index.phpはファイルを提供し、ユーザは許可チェックを知らないでしょう。.htaccess index.phpスクリプトを使用したサブディレクトリ
私は実際には、アップロードされたファイルのディレクトリ自体に私の.htaccessに次のコードを使用して、私の開発サーバー上でこの作品を作った
RewriteEngine on
RewriteRule ^protected($|/) - [F]
ErrorDocument 404 /uploaded_files/index.php
ErrorDocument 403 /uploaded_files/index.php
ErrorDocument 405 /uploaded_files/index.php
が、ライブサーバー上で、何かがtheese PHPのヘッダがあることを引き起こしているしています無視:
header('Content-Type: some/mime');
および/または
header('Content-Disposition: attachment; filename="somefile.txt"');
私は思いますそれはRewriteRuleの強制的な403かもしれませんが、私はURLが変更されず、index.phpが$ _SERVER ['REQUEST_URI']を得ることができるようにそれを使用しています
私はまた、 .php
保護されたファイルをweb-rootから移動し、すべてを 'index.php'に書き直して、PHPスクリプトでエラー処理を行うのはなぜですか? – jeroen
再利用可能な小さなCMSで、常にWebルートから離れるわけではありません。それで、私は、管理者経由でuploaded_filesフォルダ内のファイルを管理する既存のシステムを改造しようとしています。 –