В моем домене много папок и подпапок. Я хочу избежать прямого доступа к файлам типов html / jpg / gif / etc в определенных подпапках, но я хочу, чтобы они были доступны на странице index.php.
Структура выглядит примерно так:
- www.domain.com/folder1
- www.domain.com/folder2
- www.domain.com/folder2/subfolder1
- www.domain.com/folder2/subfolder2
- www.domain.com/folder2/subfolder2/index.php
- www.domain.com/folder2/subfolder2/page1.html
- www.domain.com/folder2/subfolder2/page2.html
- www.domain.com/folder2/subfolder2/images/1.jpg
- www.domain.com/folder2/subfolder2/images/2.jpg
Я попытался поместить папку page1.html, page2.html и изображений в новую папку под названием blocked_content:
- www.domain.com/folder2/subfolder2/index.php
- www.domain.com/folder2/subfolder2/<▪blocked_content sizes/page1.html
и добавил .htaccess с deny from all
и Order Deny,Allow
Deny from all
внутри папки blocked_content. Он заблокировал все, даже index.php не может получить доступ к файлам внутри него. Index.php содержит только простые ссылки как <a href="blocked_content/page1.html">
Пробовал эту конфигурацию на .htaccess:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domain\.com [NC]
RewriteRule \.(swf|pdf|css|gif|png|jpg|html|htm)$ - [F]
И поместил его в подпапку2 и не получил никакого эффекта.
Пробовал эту конфигурацию на .htaccess:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domain\.com/folder2/subfolder2 [NC]
RewriteRule \.(swf|pdf|css|gif|png|jpg|html|htm)$ - [F]
Я положил его в подпапку 2: без эффекта. Я помещаю его в корневой каталог, он блокирует все остальные папки.
Я много искал. Я застрял. Что я делаю неправильно? Ставите htacess не в те места или забываете что-то добавить? Я хочу сделать это с помощью .htacess, если это возможно. Включить сеансы php во все файлы html не получится, потому что я не могу изменить имена файлов.
index.php
и возвращать другие ресурсы только тогда, когда сайтindex.php
отображается в браузере, а контент запрашивается браузером? В таком случае это невозможно (по крайней мере, небезопасно). Пользователь всегда может изменить любые заголовки, которые вы можете проверить. - person Mikulas Dite   schedule 25.09.2012curl
(curl.haxx.se). - person Mikulas Dite   schedule 25.09.2012