В очередной раз задумываюсь о white list.
Очень часто, как минимум, в нашем случае, требуется ограничить пользователей в скачивании файлов, архивов и им подобных на всех сайтах, кроме проверенных и точно нужных для работы.
Конечно, можно использовать глобальную опцию allow_urls. Но тогда на этих разрешённых сайтах будет разрешено всё, в том числе баннеры, счётчики, указатели онлайновости аськи и подобные вещи. А это зло и лишний трафик.
Например, запрещены везде \.zip.
Но с сайта www.trud.org новые документы в виде zip (и только zip) качать можно, пусть даже всем.
Написать бы в redirector.conf в разделе для запрета файлов:
allow_urls trud.org/.+\.zip$
и проблема решена! Даже mp3 при желании с trud.org не скачаешь.
Возможная новая опция
Возможная новая опция
Alexey
Можно сделать про другому, запретить zip для всех сайтов, кроме нужного, посмотрите man pcrepattern:
foo(?!bar)
matches any occurrence of "foo" that is not followed by "bar". Note that the
apparently similar pattern
(?!foo)bar
does not find an occurrence of "bar" that is preceded by something other
than "foo"; it finds any occurrence of "bar" whatsoever, because the asser-
tion (?!foo) is always true when the next three characters are "bar". A
lookbehind assertion is needed to achieve this effect.
foo(?!bar)
matches any occurrence of "foo" that is not followed by "bar". Note that the
apparently similar pattern
(?!foo)bar
does not find an occurrence of "bar" that is preceded by something other
than "foo"; it finds any occurrence of "bar" whatsoever, because the asser-
tion (?!foo) is always true when the next three characters are "bar". A
lookbehind assertion is needed to achieve this effect.
Технически это можно сделать, но идеологически (имхо) неправильно, так как белые листы приведут к вольности типа:
Блокируем все урлы, где есть нехорошие слова, типа sex, mp3 и регулярно пополняем белый лист, с легальными сайтами, так же содержащие эти слова.
На мой взгляд, подобная практика от лени и ведет к большому количеству ложных сработок, потому я противник такого подхода.
Но кстати, неверно утверждение:
"Но тогда на этих разрешённых сайтах будет разрешено всё, в том числе баннеры, счётчики, указатели онлайновости аськи и подобные вещи. А это зло и лишний трафик."
Поскольку банеры, счетчики и т.д. будут грузиться не с разрешенного сайта, а с других, неразрешенных.
Блокируем все урлы, где есть нехорошие слова, типа sex, mp3 и регулярно пополняем белый лист, с легальными сайтами, так же содержащие эти слова.
На мой взгляд, подобная практика от лени и ведет к большому количеству ложных сработок, потому я противник такого подхода.
Но кстати, неверно утверждение:
"Но тогда на этих разрешённых сайтах будет разрешено всё, в том числе баннеры, счётчики, указатели онлайновости аськи и подобные вещи. А это зло и лишний трафик."
Поскольку банеры, счетчики и т.д. будут грузиться не с разрешенного сайта, а с других, неразрешенных.
Это не обязательно от лени. Я согласен, можно все прописать в умных правилах для URL и PCRE. И пока именно так и приходится делать. Но нагляднее видеть отдельную строку в которой явно разрешено. Это понятнее, чем каждый раз разбираться во всевозможных сочетаниях PCRE выражений. Да и разбираться легче будет: вот здесь всё, что запрещено, а тут, что не подлежит запрету.Slava писал(а): На мой взгляд, подобная практика от лени и ведет к большому количеству ложных сработок, потому я противник такого подхода.
Да, действительно. Спасибо.Slava писал(а): Поскольку банеры, счетчики и т.д. будут грузиться не с разрешенного сайта, а с других, неразрешенных.
Alexey