Я пытаюсь создать сайт, где авторизованные пользователи могут скачивать PDF-файлы ...
PDF-файлы находятся в webroot-аутентификации по php-сессиям ...
чтобы защитить файлы от хотлинкинга, я нашел рабочее решение
PHP:
при успешном входе в систему напишите новый файл с именем session id:
if($logged_in) {
touch('auths/' . session_id());
}
, тогда .htaccess проверяет, существует ли файл идентификатора сеанса, если файл не существует, его перенаправляет для входа в систему ..
# checks if a file named
RewriteCond %{HTTP_COOKIE} PHPSESSID=(\w+)
RewriteCond %{DOCUMENT_ROOT}/auths/%1 -f
RewriteRule ^(.*)$ $1
RewriteRule /* /login.php [L]
Пока это работает, сделал простую среду тестирования ....
Проблема заключается в том, что его необходимо объединить с приложением cakephp, которое использует следующий файл .htaccess:
# CakePHP
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?/$1 [QSA,L]
</IfModule>
Итак, мой вопрос, как можно изменить .htaccess, чтобы проверить, является ли запрос * .pdf и работает ли он вместе с правилами cakephp ...
Спасибо !!