Forums / National / Russian / Закрытие файлов

Ratibor
#8324 2009-02-19 03:09
В общем я разобрался с вышеприведенным скриптом :-)
Работает все на ура.
Берем этот скрипт.
Создаем к примеру в корне папку my_files
распаковываем скрипт в эту папку.
Там вроде ошибка в ndl.class.php в 172 строке.
удаляем эту строку, т.к. она там дважды прописана.
далее в браузере вводим http://www.my_site.ru/my_files/examples/examples.html
щелкаем по ссылкам чтобы убедиться что прямые ссылки не выдаются.
далее правим config.inc.php
меняем
$allowToAll	= true;
на
$allowToAll	= false;
и ниже вписываем
$allowedHosts = array
(
	"www.my_site.ru"
);

Идем на http://www.my_site.ru/my_files/examples/examples.html
щелкаем по файлам и убеждаемся что с вашего сайта файлы грузятся нормально.
Теперь копируем в буфер ссылку на файл и вводим в отдельном окне.
Получаем фигвам, что и требовалось.
Но это только пол дела, осталось защититься от прямых ссылок.
Ну это уже проще простого :-)
В .htaccess прописываем:
Options FollowSymLinks -Indexes
RewriteEngine On
RewriteBase "/"
RewriteRule ^(my_files)/(examples)/(data)/(.*)$ index.php [NC,NE,L] 

Теперь вводим прямую ссылку и тоже получаем фигвам,
т.е. нас перекидывает на главную страницу.
При этом через скрипт файлы отдаются нормально и даже докачка работает.

Что и требовалось :-)
Просто и со вкусом.
Возможно это и можно как то обойти, но это уже другая история :-)
Свыше наворачивать нет смысла, т.к. никто не будет париться чтоб преодолеть даже это.

Вот теперь все это прикрутить бы к движку :-)
Не задавай глупых вопросов, не услышишь вранья.